技术开发 频道

基于WS-BPEL2.0的服务组合研究

BPEL带来的好处

    介绍了WS-BPEL的特性后,我们概括一下BEPL所带来的好处。
    首先,BPEL是一种表示业务流程的工业标准语言,构建在开放的、基于标准的技术之上,通过组合消息传递、标准化的集成接口、XML及各种Web services标准来提供流程间的互操作性及流程可控性。同时,对于异步的长运行流程提供隐式和显示的补偿事务模型,具备良好的跨平台能力、移植性和厂商无关性。必须肯定的是,作为一种新技术,BPEL也有自身的缺陷和不足。但随着标准的不断完善和改进,WS-BPEL 2.0在很多领域有了大的进展,譬如安全等专业性能方面,支持XSLT用于可变数据的转换,支持XPath对可变数据的访问,定义了跨组织的纲领性流程,提供了许多新的构建服务的方法,提升了服务聚合效率。尤其是WS-BPEL作为第一个赢得多数厂商支持的标准化业务过程语言,已经有了许多成功的使用和产品。
  
BPEL的合理使用

    由于BPEL的技术要求、部署的复杂性和使用成本,在SOA项目中我们需要合理把握BPEL使用的度,避免BPEL被滥用。
    我们必须遵循几个关键的SOA设计原则:

  • 服务组件间是松耦合的
  • 服务要保持适当的粒度级别
  • 服务是虚拟的、可重用的
  • 服务必须是可管控的,包括运营和维护

    然后,我们还需要从以下几个方面考虑BPEL的使用成本,包括开发成本、性能、技能需求、运营维护、管控成本和最终的ROI。
    对于流程的合理构建和使用详情,有兴趣的话请参考相关的BPEL Anti Patterns。
  
WS-BPEL在IBM产品中的实现

    我们来看一下IBM业务流程开发生命周期中涉及业务流程相关的软件产品(如图10所示)。


图10


    IBM WebSphere Business Modeler——提供一种方法,通过公司非常好的实践定义和修改模型,更好地了解部门之间如何交互操作,定义个人在企业内部承担的角色和职责。Business Modeler有助于自顶向下分析业务流程。
    IBM WebSphere Integration Developer——用于基于图形的BPEL业务模型的组装、编排的开发工具。
    IBM WebSphere Process Server——允许业务规则捕捉业务变量,针对不断变化的业务状况和市场状况提供灵活性和快速反应能力。确保用WebSphere Business Modeler或WebSphere Integration Developer设计的流程可以一致、可靠、安全地执行,具备事务完整性。建立在WebSphere ESB之上,并具备其功能。
    IBM WebSphere Business Monitor——允许实时监视业务流程,采用可视化方法显示业务流程状态。WebSphere Business Monitor提醒并通知重要用户持续改进业务流程。此产品大大增强了IBM业务流程管理软件包,与WebSphere Business Modeler和WebSphere Process Server紧密集成在一起。
    WebSphere Business Monitor有助制定并跟踪常见的业务监测目标:使用记分卡视图,对照目标或关键绩效指标测量业务性能;通知主要用户需要对哪些重要业务采取措施;就异常情况发出通知;跟踪业务流程;监视工作持续时间和过去时间等业务流程指标。
    WebSphere Business Modeler和WebSphere Integration Developer(简称WID)用做业务流程的建模、仿真、组装、编排和测试。
    流程在WebSphere Process Server(简称WPS)中执行。最后,通过WebSphere Business Monitor来监控流程的运行状况。

总结与展望

    本文着重分析和讨论了Web服务组合WS-BPEL 2.0的功能和体系结构,分析了BPEL业务执行语言的优点和适用情况,最后介绍了BPEL在IBM软件产品中的应用情况。
    Web服务的组合是当前SOA中发展非常迅速的技术之一,也是讨论和争议非常激烈的技术。当前很多规范和新技术还处在发展和开拓期,包括WS-BEPL 2.0也是新兴的、不断发展中的技术,在很多方面还存在不完善,需要进一步深化和改进。但是我们有理由相信,在业界广泛支持和推动的基础上,WS-BPEL一定会取得更大的发展和革新,让我们拭目以待。
  
参考资料
[1] Web Services Business Process Execution Language Version 2.0 Specification. OASIS Standard. 20070411
[2] BPEL4WS Specification 1.1. IBM.Microsoft.BEA.SAP.Siebel. 20030505
[3] IBM WebSphere Business Process Management Version 6.0 . IBM.
[4] WebSphere business integration zone . IBM.
[5] WebSphere Process Server and WebSphere Integration Developer resource page . IBM
[6] T. Erl. Service-Oriented Architecture: Concept, Technology, and Design. Prentice Hall, 2005.
[7] J. Koehler, R. Hauser, S. Sendall, and M.Wahler. Declarative techniques for model-driven business process integration. IBM Systems Journal, 44(1):47–65, 2005.
[8] Understand the impact and importance of standards and specifications for the development of SOA and Web services with this standards roadmap.

0
相关文章