SOA——概念
SOA(Service-Oriented Architecture,面向服务的架构)是一种设计方法,其中包含多个服务,而服务之间通过配合最终会提供一系列功能。
一个服务以独立的形式存在于操作系统进程中。
服务之间通过网络调用,而非采用进程内调用的方式进行通信。
SOA——目标
SOA可以用来应对臃肿的单块应用程序,从而提高软件的可重用性。
SOA的目标是在不影响其他任何人的情况下透明地替换一个服务,只要替换之后的服务的外部接口没有太大的变化即可。这种性质能够大大简化软件维护甚至是软件重写的过程。
SOA——实施中遇到的问题
通信协议(例如SOAP)如何选择、第三方中间件如何选择、服务粒度如何确定等,目前也存在一些关于如何划分系统的指导性原则,但其中有很多都是错误的。
现有的SOA知识并不能帮助你把很大的应用程序划小。它没有提到多大算大,也没有讨论如何在现实世界中有效地防止服务之间的过度耦合。
SOA——与微服务关系
微服务架构是SOA的一种特定方法。
请关注我的微信公众号
个人微信公众号
技术交流群 (仅作技术交流):642646237
请关注我的头条号: