1、SOA时间轴(从XML到Web服务再到SOA)
我们从讲述形成当前SOA平台的关键工业开发入手来建立时间轴。然后我们看一看SOA在它的权限范围内,如何作为当代架构的平台而改变了XML与Web服务技术的角色。
1.1、 XML简史
如同HTML,扩展标记语言(XML)系W3C所创建,源自流行的标准通用标记语言(SGML),它在60年代后期就已存在。这是广泛使用的元语言,允许组织增加原始文档数据。
XML在90年代后期的电子商务运动中声名鹊起,服务器端脚本语言可以经由互联网而处理业务。通过XML的使用,开发者能够给任何片段附加上意义和上下文,再跨越互联网协议传输。
XML不仅被用于以标准化的方式来表达数据,其语言自身还被用作一系列的附加规范的基础。XML Schema定义语言(XSD)与XSL转换语言(XSLT)都以XML表达。这些规范,事实上已成为关键核心XML技术集的关键部分。
XML表达架构代表了SOA的基础层。在其内部,XML建立了在服务各处流动的消息格式与结构。XSD schemas保持消息数据的完整与有效性,而且XSLT使得不同的数据表达间通过schema映射而能够互相通信。换句话说,没有XML你在SOA内寸步难行。
1.2、Web服务简史
在2000年,W3C接受了一项关于简单对象访问协议(SOAP)规范的提案。这个规范本来设计用于(并在一些案例替代)专有RPC通信。想法是对于在构件间传输参数数据可以序列化成XML传送,然后支序列化成其原生格式。
很快,公司及软件厂商开始看到,对于推进通过构建于专有-免费的互联网通信框架之上的电子商务技术,存在日益巨大的潜力。这最后导致了创建一个纯粹的、基于Web的分布式技术能充分利用概念标准化的通信框架,来桥接组织之间和组织内部所存在的巨大差异。这个概念被称为Web服务。
Web服务最重要的部分是其公共接口。它是分配服务识别并使其激活的核心信息块。因此,首先支持Web服务的是Web服务描述(WSDL)。W3C第一份WSDL评议提案是在2001年,此后还在不断地修订这一规范。
为了进一步的开放协同性的愿景,Web服务需要一个互联网友好的、XML兼容的通信格式,以便能够建立一个标准化的通讯框架。尽管有别的选择,譬如可以考虑XML-RPC,但SOAP因为工业界的偏好而胜出,并且保留了最初的通讯标准用于Web服务。
为支持SOAP的新角色,W3C随之发布了更新版本的规范,同时考虑了RPC风格的与文档风格的消息类型。而后者在SOA里面更为常用。最终,“SOAP”一词不再代表“简单对象访问协议”的首字母缩写。到了规范的1.2版,它变成了一个独立的术语。
完成第一代Web服务标准家族的是UDDI规范,它原本由UDDI.org所开发,被递交到OASIS之后,它继续与UDDI.org一起合作开发。这个规范考虑在组织内部及组织边界之外来创建标准化的服务描述的注册。UDDI提供了潜在的对Web服务在一个集中的位置注册,在此处能够被服务请求者所发现。WSDL与SOAP不同,UDDI尚未被工业界所普遍接受,并且保留了一个可选的SOA扩展。
开发定制的Web服务可适应变化的业务需求,并且第三方市场出现了促进各种实用服务的销售或租赁。现存的通讯平台,譬如面向消息的中间件(MOM)产品,结合Web服务可支持SOAP之外的其他消息协议。一些组织可迅速合并Web服务,以促进B2B数据交换经常要转变为EDI(电子数据交换)替代品的需求。
1.3、 SOA简史
不久前组织才开始意识到只需要缓和地替代现存的分布式应用,Web服务可成为独立的架构平台---可使用Web服务技术集的效益来实现企业中服务概念的平台。这样,面向服务架构开始进入IT的主流。
在这一点SOA频繁地以不同的方式被分类,经常依赖于构建服务所用的实现技术。早期的模型,主要从Web服务标准初始系列中得到灵感,将SOA定义为一个围绕三个基本的构件的架构模型:服务请求者,服务服务提供者与服务注册(图1)。
图1. SOA的早期形态第一代Web服务标准实现此模型的以下方面:
★ WSDL描述服务。
★ SOAP提供了用于服务及其请求者的通讯格式。
★ UDDI提供了标准化的服务注册格式。
文章来源于领测软件测试网 https://www.ltesting.net/