soa是什么意思翻译 soa是什么( 二 )


那么这种架构例子中,大家是不是看得出来非常适合复杂应用系统整合、协作,因为很有可能通讯设备服务提供了C 网络通讯包,物资服务是Java平台运行,医疗资源服务又是.Net平台运行,但是大家基于统一的服务规约,提供精确而风格一致的服务接口,那么对于BPM也好,ESB也好,就极大的减少了适配集成的复杂过程,让各种业务和通讯系统,都变成了一项服务,作为SOA整体调度与管理的一枚棋子而存在 。这其实就有点SOA的精髓了 。
WebService的实现方式
往往很多人不太了解SOA的情况下,就会认为Webservice就是SOA,所以这就是为什么先把上面的SOA思想以及架构实现讲讲,大家就能对SOA有个整体全面的理解 。Webservice只是实现SOA构件服务的一种手段,若将其中的换成基于RestFul风格的实现,也是没有问题的 。
WebService又依赖于几种具体的技术规范和协议了,具体描述我就直接引用吧:

SOAP(Simple ObjectAccess Protocol,简单对象访问协议) 定义了服务请求者和服务提供者之间的消息传输规范,SOAP 用 XML 来格式化消息,用 HTTP 来承载消息 。通过 SOAP,应用程序可以在网络中进行数据交换和远程过程调用(Remote Procedure Call,RPC) 。
WSDL(Web ServiceDescription Language,Web 服务描述语言) 是对服务进行描述的语言,它有一套基于 XML 的语法定义 。WSDL 描述的重点是服务,它包含服务实现定义和服务接口定义 。
UDDI(Universal Descript百思特网ionDiscovery and Integration,统一描述、发现和集成) 提供了一种服务发布、查找和定位的方法,是服务的信息注册规范,以便被需要该服务的用户发现和使用它 。UDDI 规范描述了服务的概念,同时也定义了一种编程接口 。通过 UDDI 提供的标准接口,企业可以发布自己的服务供其他企业查询和调用,也可以查询特定服务的描述信息,并动态绑定到该服务上 。
如何通俗地去理解这三大件呢?

soa是什么意思翻译 soa是什么

文章插图
还是上个图,看起来舒服一些 。如上图所示:SOA中的服务1需要调用服务2的接口,那么我们就描述一下Webservices方式 。
首先虚线中,也就是开发阶段服务1要去理解服务2的WSDL描述,清楚服务2提供的服务接口是什么样子,描述语言就是XML,服务1的程序就知道需要设置什么参数,返回什么结果 。
然后在运行时服务1要从UDDI服务上,也就是注册发现中心,找到服务2在哪里,由于服务2早已经在UDDI服务中注册,那么服务1就可以获得服务2的路由地址 。再对需要传递的数据进行SOAP格式编码 。
SOAP是HTTP层之上的一个传输协议,服务1对传递参数进行满足SOAP协议的xml编码和参数发送,形成对服务2的WebService接口调用,服务2接收到SOAP协议数据,进行xml解码,然后再进行内部实现层的逻辑处理,并最终将结果仍然以SOAP方式编码返回给服务1,由服务1再解码数据 。这就完成了WebService的一次请求和响应 。当然了服务1也可以是一个普通的客户端 。
从上述的图示例子中,我们可以看到WebService是通过XML作为中间传递格式,这就兼容了异构平台的数据格式,SOAP协议大部分是基于HTTP协议(SOAP的设计不限于HTTP),这样就兼容了异构平台数据传输 。
因此WebService的技术实现方案就非常符合SOA架构中服务的异构平台兼容性要求(SOAP),并且具备完整规范的服务接口语义描述(WSDL)和服务注册发现管理的规范定义(UDDI) 。
SOA与微服务的优劣对比 往往没有对比就没有伤害,因此我们通过SOA架构与微服务架构的对比,来更深刻地认识SOA架构的优势与劣势,同时也能掌握到微服务优劣特征 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: