首页  ·  知识 ·  
SOA实施困难与ESB融合更难
网友  收集    编辑:德仔   图片来源:网络
 当你询问任何一个负责建设SOA(面向服务的架构)的人时,他都会告诉你说,最困难的部分并不是技术;它将改写作为这一架构基础的业务
 当你询问任何一个负责建设SOA(面向服务的架构)的人时,他都会告诉你说,最困难的部分并不是技术;它将改写作为这一架构基础的业务流程,并且常常随后改变角色和责任,引起争议。

  很多SOA实践者都这样说,而事实可能也的确如此。但反过来看,技术部分就真得那么容易吗?在所有的规划和战略制定完成后,必须提供服务以及它们的基础设施并同已经部署的平台、应用和系统一起来管理。

  SOA的最终目标是一个极其灵活的基础设施,在这个基础设施中,IT开发人员可以在企业中的多个平台和域的抽象层之上开发复合应用。但是,俗话讲:没人可以“煮开大海”,在SOA中也不可能一次实现所有目标。实用的SOA计划先是可以从一些灵活性更大、受益也比较明显的业务流程集合入手。例如:市场条件不断变化的环境,或由于竞争力原因新服务必须立即部署的环境。在一定程度上,这种从上到下(top-down)的方法的确比较符合已经拥有软件资产和基础设施的情况。在实际应用时,技术人员必须做出选择,比如在哪种平台上构建关键服务,以及这些服务将如何被展现、管理和仲裁。一些公司可以选择ESB(企业服务总线)来连接服务,而另一些公司可能更关注为重用而设计的基于标准的服务。

  先行者的声音:从小处入手

  当越来越多的公司寻求将面向服务的架构方式用于它们的IT系统时,一些提前采用SOA的用户告诫说,在刚开始时一定要注意:规模要适度。

  日前,TD Banknorth公司的业务技术规划高级副总裁Russell Rodrigue建议说:“从小规模入手,选择一个可管理的、定义明确的,并且你可以充分发挥影响力的项目。”

  TD Banknorth是美国的金融服务公司。该公司通过收购迅速扩展,在过去8年里兼并了23家公司。Rodrigue说,过去,在收购一家新公司时,TD Banknorth利用一种“大拆大换的模型”来处理新收购公司的IT系统。在意识到这种方法的费用非常高昂后,该公司最近采用了SOA。

在定义其SOA方法时,这家银行引入了BEA、IBM和WebMethods来通过各自的方法实现SOA部署。TD Banknorth给每家厂商3周时间让Web服务运行起来。BEA和IBM用了3周多时间才完成了它们的SOA部署,而WebMethods只用了3天时间就得到了一个运营系统。

  一家轿车与卡车租赁公司Avis Budget Group早在2000年就开始了为SOA部署作准备工作。Avis公司战略副总裁John Turato认为,最轻松的做法是从包括BEA、IBM和Oracle在内的不同厂商中选择最好的技术。

  大多数情况下,某一家厂商可以提供自己的应用服务器和信息库,而另一家厂商往往也可以提供另外一套不同的信息库和注册表。因此,如果用户购买了不同厂商的产品,那么,购买的产品中必然有相当一部分是重叠的。他说,用户在等待SOA市场形势变得更清晰。Turato讽刺说:“要么不久后出现整合,要么IBM把它们全买下来。”

  Rodrigue说,到目前为止,衡量SOA方法成功的一个指标是使用Web服务后的开发费用下降的幅度。由于越来越多的开发工作涉及重用已有的技术,每个服务的价格已经从数千美元降到了500美元左右。Avis的Turato在开发5个重要SOA项目的过程中,发现开发时间减少了80%。

  虽然外包了一些应用开发,但Avis一直很谨慎地将企业架构技能保留在公司内部。Turato引用1970年的一部战争电影和黑色喜剧片《Kelly's Heroes》中的话说:“我们喜欢能够以比我们遇到麻烦更快的速度摆脱麻烦的感觉。”

  Rodrigue说:“技术是比较容易的部分,改变业务才是最困难的部分。”他补充说,尽管存在来自开发人员和高级经理接受Web服务的压力,但“中层人员才是最难对付的人。”

  随着SOA的采用,中层人员看到他们的职责被技术承担,他们会感到不高兴。Rodrigue说:“这将是一场政治上的战斗。”

  ESB上的抉择?

  服务应当被封装到ESB中吗?或者它们应当通过其他一些方式管理和仲裁?支持者和反对者各持一词。

  Intuit的Moseley说,ESB适用于需要编排的长期运行的流程,如必须按照一定次序完成步骤、同时进行验证的订单处理。例如,订单流程可能需要在计算运输费用或批准信用卡之前验证顾客的地址(因为验证信用卡常常需要地址),所有的步骤都必须在货物单发送给送货部门前完成。Intuit的订单处理系统就使用这类仲裁的服务方式。

  然而,也有一些人将ESB视为基于过时的EAI理念的产品。他们认为,ESB与SOA的开放本质并不是一条“道”上的。Burton Group分析师Anne Thomas Manes说:“EAI与SOA完全不同。EAI是为了在业务流程竖井上架一座桥梁,而SOA是为了推倒这些竖井。”她对使用ESB配置服务或将细粒度的服务编排为可广泛访问的粗颗粒的服务没有疑问,但却批评了总线作为连接所有服务网关的概念,尤其当转换到ESB消息传输和从ESB消息传输转换出来造成额外的开销时,她更是觉得不能接受。

本文作者:网友 来源:网络收集
CIO之家 www.ciozj.com 微信公众号:imciow
    >>频道首页  >>网站首页   纠错  >>投诉
版权声明:CIO之家尊重行业规范,每篇文章都注明有明确的作者和来源;CIO之家的原创文章,请转载时务必注明文章作者和来源;
延伸阅读