SOA - 概述


什么是面向服务的架构(SOA)?

面向服务的体系结构是一种体系结构设计,其中包括网络中相互通信的服务的集合。每项服务的复杂性对于其他服务来说并不明显。该服务是一种定义明确、自包含的操作,提供单独的功能,例如检查客户帐户详细信息、打印银行对账单等,并且不依赖于其他服务的状态。

历史

第一份关于 SOA 的报告由分析师Roy W.SchulteYefim V.Natis于 1996 年发表。

为什么要使用SOA?

  • SOA在市场上应用广泛,可以根据市场情况快速响应并做出有效的改变。

  • SOA 对子系统的实现细节保密。

  • 它允许新渠道与客户、合作伙伴和供应商进行互动。

  • 它授权公司选择自己选择的软件或硬件,因为它具有平台独立性。

特征

  • SOA 使用接口解决了大型系统中的困难集成问题。

  • SOA 使用 XML 模式通过消息与客户、提供商和供货商进行通信。

  • 它使用消息监控来改进性能测量并检测安全攻击。

  • 由于重用该服务,软件开发和管理成本将会降低。

优点

  • SOA 允许重用现有系统的服务,交替构建新系统。

  • 它允许插入新服务或升级现有服务以满足新的业务需求。

  • 它可以增强服务的性能、功能并轻松地进行系统升级。

  • SOA能够调整或修改不同的外部环境,并且可以轻松管理大型应用程序。

  • 公司可以开发应用程序而无需替换现有应用程序。

  • 它提供了可靠的应用程序,与大量代码相比,您可以在其中轻松测试和调试独立服务。

缺点

  • SOA需要较高的投资成本(意味着技术、开发和人力资源的大量投入)。

  • 当一个服务与另一个服务交互时,会产生更大的开销,这会增加验证输入参数时的响应时间和机器负载。

  • SOA 不适合 GUI(图形用户界面)应用程序,当 SOA 需要大量数据交换时,GUI 应用程序会变得更加复杂。