随着近几年SOA概念的推广及相关技术标准的发展,SOA逐渐为众多的用户所接受,并在电子政务及企业应用的建设中逐步得到应用。但是,面对众多纷繁复杂的SOA相关技术标准,IT企业在开发SOA相关软件产品及用户实施SOA进行选择时,往往分不清楚哪些技术标准是他们所需要的,而且相
1.SOA相关技术标准分类
随着近几年SOA概念的推广及相关技术标准的发展,SOA逐渐为众多的用户所接受,并在电子政务及企业应用的建设中逐步得到应用。但是,面对众多纷繁复杂的SOA相关技术标准,IT企业在开发SOA相关软件产品及用户实施SOA进行选择时,往往分不清楚哪些技术标准是他们所需要的,而且相当部分的SOA技术标准的定位,有一定的重合。因此,选择适合的SOA相关技术标准,成为IT企业和实施SOA用户的面临的难题。下面,简单介绍一下部分SOA相关技术标准,并作简单分析。
1.SOA相关技术标准分类
标准与规范基本相似,但略微不同,规范是标准的建议文档。标准一般是由业界公认的标准化组织制定和发布,而规范多为厂商或非标准化组织发布。本文不对它们进行区分,统一称为标准。SOA相关技术标准有多种分类方式,本文介绍两种。
1.1.分类方法一
一种方法是将其分成三类,即XML标准集、Web服务标准集和SOA参考模型:
XML标准集
主要包括两类,一是基于纯文本的编码技术,XML信息集、XML Schema、XML Query和XSLT 2.0等。二是允许不透明的二进制数据与传统的基于文本的标记交织在一起的编码技术。如XML二进制优化封装协议(XML-binary Optimized Packaging,XOP)、SOAP 消息优化(Transmission Optimization Method,MTOM)等。
XML标准集是促进SOA发展的头等功臣,它们多数是由W3C组织制定,并得到了众多软件厂商及用户的支持和使用,如不管是Java阵营还是.NET阵营,乃至其他软件开发技术,大都提供XML标准集的工具包。XML标准集不但是用于SOA数据描述和处理的最佳标注,它还是其他SOA相关技术标准的基础,如Web服务标准,都是以XML来进行描述的。
Web服务标准集
Web服务标准集已经初具规模,内容涵盖传输层、消息机制、编程模型、服务发现和描述、可靠性、事务处理、安全和管理等方面。如WSDL用于Web服务的语义描述,WS-Policy用来描述Web服务的能力和策略等,WS-Security、SAML等用来描述Web服务相关安全性要求,等等。目前,多数Web服务标准集,由OASIS组织制定,有些Web服务标准尚不完善,正在发展中。
SOA参考模型
SOA发展早期,不同厂商宣扬的SOA参考模型不尽相同,随着相关技术标准的发展,各个厂商的认识逐渐统一。当前,OASIS已经制定了SOA的参考模型SOA-RM1.0规范,它提供了一个整体的抽象框架,它用来理解SOA先进技术理念的抽象框架,是在面向服务环境里的重要衔接方式,是标准逐步统一的重要发展进程,也是服务支持的详尽规范。SOA参考架构,能够在企业的SOA整体计划中提供一个很具有全局性的整体框架加以指导,但却不能在现实的SOA执行中提供太多具体可行的意见。
虽然已经有了SOA参考模型的推荐性标准,但标准化组织和厂家在SOA的参考架构上还没有统一。
1.2.分类方法二
SOA相关技术标准的另一种分类方式,是根据技术标准在 SOA 中的角色功能,将其分为三大类:服务层次上的信息交互规范、基础通信标准规范、元数据标准规范。根据各种标准规范在SOA 体系中的角色功能,可以将 SOA 协议栈分为 7 层,如图1所示。从底向上,包括传输层、消息层、描述层、管理层、服务组合层、表示层,其中除了ebXML和电子商务相关的技术标准(如资源注册的ebRS、消息表示ebMS、外部服务资源编排的WS-CDL等)外,大多数在国内已经得到了相当的应用,如东方通科技的应用集成产品TongIntegrator和应用服务器TongWeb,都支持部分Web服务的相关技术标准。传输层作为传统的传输协议,在SOA技术实现中,依然发挥着重要的作用;消息层SOAP已经是Web服务消费的消息传输载体的首选;Web服务描述标准WSDL,虽然在语义方面的描述还不完善,但它已经被绝大多数厂商和用户接受并使用了;在管理层的相关技术标准,目前还在发展完善,国内实际应用的还不多,但诸如常用的安全要求WS-Security、可靠传输要求WS-Reliability等,已经有用户和厂家开始考虑使用;服务组合层,已经有不少的商业及开源组织,基于BPEL标准来开发业务流程管理软件了;表示层的标准如JSR168和WSRP,主要用于Portal软件的开发。
图1.SOA协议栈分层结构
网友评论