北极星

搜索历史清空

  • 水处理
您的位置:电力综合正文

SOA技术标准的应用

2008-08-04 18:38来源:希赛关键词:SOA技术标准收藏点赞

投稿

我要投稿

  导读:不同厂商及组织定义的SOA参考架构,基本上大同小异,本文以长风开放标准平台软件联盟所推荐的为例,来作简单介绍。长风联盟的SOA-RA-TF(SOA参考架构工作组)参照相关的国际标准,充分考虑国内的实际业务需求,提出了一个SOA参考架构。

  SOA从概念到实用,仅仅短短几年时间,发展十分迅速。等随着SOA发展的深入,各种SOA相关技术标准也随之发展和完善。SOA的优点和特点,已经为大多数厂家和用户所熟知,如松耦合、业务敏捷性、基于开放式标准等,那么如何构建企业或组织的SOA应用呢?构建SOA架构的企业应用或电子政务,需要基于开放式的SOA相关技术标准,不然,基于非标准技术的应用,也仅仅是传统的应用,而不是所谓的SOA,更谈不上获取SOA所带来的好处了。那么,面对庞大而复杂的SOA相关技术标准,我们如何来有选择的使用它们呢?业务离不开技术的支持,而技术需要为业务服务,因此,离开业务谈技术标准,犹如纸上谈兵。下面,我们将从业务和技术两个角度,浅谈一下SOA技术标准的应用。

  1.SOA参考架构

  谈到SOA技术标准的应用,需要从业务角度了解一下SOA参考架构。不同厂商及组织定义的SOA参考架构,基本上大同小异,本文以长风开放标准平台软件联盟所推荐的为例,来作简单介绍。长风联盟的SOA-RA-TF(SOA参考架构工作组)参照相关的国际标准,充分考虑国内的实际业务需求,提出了一个SOA参考架构,如图1所示。长风联盟SOA参考架构本身,体现了松散耦合特性,它结合了传统技术和Web服务技术,考虑了各种应用场景,可灵活地分拆组合使用。

  SOA参考架构及相关技术,主要应用在企业应用集成领域,它能够以服务的方式共享和复用企业现有应用资产,保护用户IT投资,并能够以服务的方式构建新的业务流程,对组织中的业务流程进行灵活的重构和优化,增强业务的敏捷性。下面从业务的角度,简要介绍一下SOA参考架构各个部分的作用与定位。

  1)通过底层的适配器服务,将组织现有应用系统进行封装,形成可复用的服务,来复用组织中的现有应用资产。所以,适配器服务是应用集成的基础;

  2)服务总线,作为服务之间的协调中介,可将组织中的所有服务如适配器服务、信息服务、安全服务、业务服务、流程服务等,集中管理起来,暴露服务接口,并提供增值的服务注册、路由查找、服务质量保障等功能,它在SOA参考架构中起着核心中枢的作用;

  3)流程服务,用来将组织中的服务,进行编排组合,以满足业务流程的需要,同时,也能够形成更大粒度的服务,形成新的业务服务。能不能体现业务敏捷性及满足用户复杂的业务流程需要,流程服务起着关键的作用;

  4)顶层的交互服务,是直接面向用户的一层,能够为用户提供友好的交互界面及门户集成的功能;SOA实施的效果,往往通过交互服务这张脸面来体现;

  5)当然,要开发和管理SOA所需要的运行服务,还离不开集成开发环境、运行管理系统及服务资源的管理。SOA是否易于被用户接受、开发是否快捷高效、管理和维护是否方便,这几种辅助工具非常关键。

  2.SOA相关技术标准及应用

  根据SOA参考架构所对应的业务及构建SOA涉及的技术要求,需要对应的技术标准来统一不同厂家和用户的认识,构建开放的协作契约。根据技术标准在SOA中的角色功能,我们将其分为三大类:服务层次上的信息交互规范、基础通信标准规范、元数据标准规范。根据各种标准规范在SOA体系中的角色功能,可以将SOA协议栈分为7层,如图2所示。从底向上,包括传输层、消息层、描述层、管理层、服务组合层、表示层,以及服务资源注册和发现层,其中除了ebXML和电子商务相关的技术标准(如资源注册的ebRS、消息表示ebMS、外部服务资源编排的WS-CDL等)外,大多数在国内已经得到了相当的应用。下面简单介绍一下相关的技术标准及其应用场合。

  2.1.传输层

  传输层作为传统的传输协议,在SOA技术实现中,依然发挥着重要的作用。基于SOA的传输协议,仍然利用原有的传输协议,如HTTP、RMI/IIOP(分别用于Java的远程对象调用和CORBA的远程通讯)、SMTP、TCP/IP等。当然,在使用基于Web的服务时,常常使用HTTP协议,以便于互联网上穿越防火墙。

  2.2.消息层

  SOAP协议也基于XML描述,格式简单,语言独立,便于解析和扩展,因此,消息层SOAP已经是Web服务消费的消息传输载体的首选。Web服务协议栈中的许多规范,都是基于SOAP进行扩展的,如WS-Security、WS-Reliability、WS-Policy等。在有特殊要求的电子商务领域,消息传输还可以采用ebXML中的ebMS标准,而基于J2EE技术的应用中,还可以选择JMS作为传输协议。当然,我们还可以使用自定义或是某些厂商定义的传输协议,但那不是SOA理想的选择。

投稿与新闻线索:陈女士 微信/手机:13693626116 邮箱:chenchen#bjxmail.com(请将#改成@)

特别声明:北极星转载其他网站内容,出于传递更多信息而非盈利之目的,同时并不代表赞成其观点或证实其描述,内容仅供参考。版权归原作者所有,若有侵权,请联系我们删除。

凡来源注明北极星*网的内容为北极星原创,转载需获授权。