SOA最常用的技术是什么?

Hug*_*ota 2 rest soa soap

我正在研究SOA概念,并找出了技术(我应该这样称呼它?)SOAP和REST(只有这些).我想知道是否有任何其他技术(?)在这种情况下共存,它们代表什么.他们在某事上更好吗?有很多人使用它们吗?等等谢谢(:

Jam*_*son 5

将SOA架构与SOAP,REST和架构的其他实现分开是很重要的.

您可以在任何支持请求和响应消息的技术之上实现SOA体系结构.

SOA架构的核心特征是: -

  • 客户端发送简单的请求消息.
  • 服务器响应单个回复消息.
  • 服务接口定义明确并"广告"给客户.即,客户可以向服务器查询所支持的服务以及这些服务的接口.
  • 没有数据复制,也没有本地存储.如果客户想知道Widget然后查询Widget服务,则客户端不保留任何Widget数据.同样,如果客户端想要更新Widget的详细信息,它会向Widget服务发送更新请求.
  • 同步,异步和批处理接口都是可以接受的.

这种架构的主要优点是: -

  • 服务器与其客户端之间的唯一联系是"接口".客户端绝对不需要知道服务器实现,同样服务器也不关心客户端是如何实现的.
  • 数据由服务和仅服务拥有和管理.这消除了同步,复制问题,并将双重更新的可能性降低到几乎为零.
  • 结果架构的绝对简单性允许极大的灵活性.
  • 最终架构的绝对简单性使得系统非常可靠.

但是,正如你在现实世界中得出的结论,大多数都使用了SOAP和REST.当人们说SOAP时,他们通常会引用WS-*系列标准和协议 - > WSDL(Web服务定义语言),WSM(Web服务消息传递),WS-Security等,它们使用SOAP作为传输机制.

虽然REST具有简单的优点,而且WS*非常复杂且难以实现,但我建议将WS*方法用于任何相当大的系统.WS*标准不仅支持简单的请求/响应,还支持除http(JMS,文件等)之外的异步消息和传输,更重要的是,WS安全标准很好,并支持安全业务到商务通信.