SOA

以下是金蝶中间件有限公司总经理 奉继承博士写的一篇关于SOA的理解,笔者感觉受益颇多。

PS:笔者在此之前对于SOA毫无认知

http://blog.vsharing.com/fengjicheng/A1059842.html

SOA概念

       面向服务架构,是构造分布式系统的方法论,也提供一些标准和工具。、

分布式

       一个服务器能做的事情,可以多个服务器去做,减轻压力。

布式诞生的原因

     系统架构演变过程     

    以早期的电商平台为例,UI层调用服务层(分了N多得模块),服务层调用DB,这样的系统瓶颈会很多

 

随着业务需求的提升,此时的系统架构无法满足需求,于是系统架构进行了升级

出现了分库分表的概念,来解决数据库所带来的瓶颈问题,但是又出现了新的问题

比如用户在下了一个订单之后,要同时收集多个模块里包含的一些信息,那么需要

链接的数据库也将会很多,导致系统性能大降。

 

系统架构再一次进行调整,UI层会访问企业数据总线,而比如订单、财务等会做成

服务,需要订单信息的就访问订单服务诸如此类,将不再直接操作数据库,而是通过

服务,企业数据总线叫网关,在微服务架构中有体现,数据总线会调用提供的服务,服务发布

的时候需要注册到数据总线

 

但是更多的时候,系统并不是这么理想化的一步步演变,很多情况是有N多个系统需要互相交互

不管是从系统的稳定性还是各个方面来看,这无疑是很糟糕的情况,但是现有的各种系统又无法

重构且需要满足业务需求,SOA针对于这种情况也提供了一种解决方案,建立一个数据总线,并定义

标准,各个系统之间不再直接交互,而是通过数据总线去完成交互

 

写好的服务需要注册到数据总线,数据总线不做其他事情只是类似于网关中转一样

可以理解为服务向数据总线注册时就写了一些IP地址端口协议格式等信息,Client

调用的时候就像根据Key去数据总线找(因为在注册的时候,服务肯定要描述你这个服务是要干嘛的)

实际上Client还是直连的服务,不过不再直接去找而是找数据总线要

原文地址:https://www.cnblogs.com/JohnTang/p/12019516.html