什么是SOA(面向服务的体系结构)
2020.05.25 -
面向服务的体系结构(SOA)是一种软件设计风格,其中应用程序组件通过网络上的通信协议向其他组件提供服务。SOA服务是一个离散的功能单元,可以远程访问,执行和独立更新,例如在线检索信用卡对帐单。SOA还旨在独立于供应商,产品和技术。

根据SOA的许多定义之一,服务具有四个属性:[
- 它在逻辑上表示具有指定结果的业务活动。
- 它是独立的。
- 对于消费者来说,这是一个黑匣子,这意味着消费者不必知道服务的内部运作方式。
- 它可能包含其他基础服务。[
可以结合使用不同的服务来提供大型软件应用程序的功能,[SOA与模块化编程共享的原理。面向服务的体系结构集成了分布式,单独维护和部署的软件组件。它通过促进组件在网络(尤其是IP网络)上的通信和合作的技术和标准来实现。
SOA与应用程序编程接口(API)的思想有关,API是计算机程序不同部分之间的接口或通信协议,旨在简化软件的实现和维护。可以将API视为服务,而将SOA视为允许该服务运行的体系结构。
SOA的核心价值
- 商业价值比技术战略更为重要。
- 战略目标比特定项目的利益更为重要。
- 固有的互操作性比自定义集成更为重要。
- 共享服务比特定目的实现更为重要。
- 灵活性比优化更重要。
- 进化上的完善比追求最初的完善更重要。
在SOA中,服务使用协议来描述它们如何使用描述元数据来传递和解析消息。该元数据描述了服务的功能特征和服务质量特征。
面向服务的体系结构旨在允许用户组合大量功能,以形成纯粹由现有服务构建的应用程序,并以即席方式对其进行组合。服务向请求者提供一个简单的接口,该接口抽象出充当黑盒子的底层复杂性。其他用户也可以在不了解其内部实现的情况下访问这些独立的服务。
阅 205