技术开发 频道

SOA的竞争前沿:ESB技术发展与应用趋势

    超越EAI

    ESB在开放性上的进步,使其在EAI的基础上又进一步,在秉承EAI集成的理念之上,ESB能够做到面向SOA的集成。

    王志伟说:“在SOA之下,ESB具有了透明化与标准化的特点。例如,今天你用了一家厂商的ESB产品,如果以后你觉得不好,还可以用其他厂商的ESB产品代替,而不会影响ESB上层应用和下层的数据库和操作系统。”

    刘汩春说:“如果具体的把ESB产品和传统EAI里面的消息总线类产品做个比较,两者差异就很大了,主要有三方面。第一,ESB以SOA面向业务的哲学为基础,所以它主要是通过配置来建立,而不是通过编程建立;第二,ESB必须有能力在不同的协议之间建立互通机制,包括传统的消息机制和Web服务接口;第三,除了消息(服务)代理方式外,ESB还必须为SOA服务治理提供服务的生命周期管理,而非简单的过滤、转发、路由。”

    陆飞舟说:“ESB 采用了轻量级的分布式体系结构。当必须将程序间的每次交互转换为规范格式时,集中式的交换中心才有意义。ESB(如 IONA Artix)可以将更多的处理逻辑分配到端点上。这与大型主机和现代的分布式系统体系结构间的区别相似。交换中心与大型主机一样,仍然可以用于某些需要它的体系结构中,但它们只是开发人员的一项选择,而不是供应商指定的要求。”

    陆飞舟说:“ESB采用了Web服务这样的开放标准,而EAI采用的是私有化集成方式,许多接口都是某厂商自己的技术,而且往往许多集成并不透明。”

    BEA公司的刘汩春认为:“ESB除了运营支撑系统作为服务提供者和消费者的中介提供服务交互、代理和路由功能外,还必须提供可扩展的服务编排、目录、元数据管理、生命周期管理、服务质量和级别控制等功能。通过这些功能,ESB帮助屏蔽各种服务生产者的差异,集中管理所有的服务消费行为。从而避免服务的大量蔓延,简化用户SOA环境的复杂性。”

    进化中的技术与产品

    从广义的角度而言,ESB最主要的技术与Web服务密不可分,如WSDL(Web服务描述语言)、UDDI(统一发现、描述和集成)和SOAP(简单对象访问协议),这方面的技术目前处于稳定的发展阶段,而有关WS*的发展正处于一个整合和渗透不稳定过程中。此外,还有一些相关的技术正在活跃起来,比如流程方面BPEL(业务流程执行语言); 安全方面SAML(安全断言标记语言)、XML处理的XQuery;服务组件模型SCA/SDO(服务组件架构/服务数据对象)与JBI(Java Business Integration)等。

    朱律玮告诉记者:“目前大部分的ESB技术规范还处于发展之中。例如服务的查找,在行业内是基本可行的,但在互联网上,由于语义的差异,服务的查找还很困难,WSDL规范了技术语义的描述,但关于商务语义的描述还没有正式的规范出台。目前比较火的SCA/SDO的版本还是0.9,没有正式发布。”

    刘汩春说:“ESB目前正处于快速发展的时期,随着ESB逐渐在实际项目中深入应用,用户对其提出更多的要求。比如,服务生命周期管理,就是指从服务发布、注册、使用、推广、效益统计、升级等;服务质量控制和服务级别保证;服务目录和元数据管理;异构适应性:跨越具有不同所有权的多种网络、多个协议以及多个管理域的真正意义上的总线。”

    刘汩春认为,ESB还必须解决用户对传统EAI的主要诟病,就是其客户化开发工作量问题。ESB必须提供给客户越来越多的在线配置功能,而非开发框架来适应业务变化,所以其工具的优化是促进应用的一个重要因素,也是一个发展趋势。

    目前,从厂商产品的划分来看,专门以ESB为主要产品线的中间件厂商的ESB产品覆盖面较广,他们一般认为自己的ESB产品可以帮助用户实现所有与SOA有关的工作,其中也包括了BPM。有些厂商还把门户功能也加入其中。而原来提供SOA平台产品的软件厂商则认为ESB是SOA中的一部分,他们的ESB产品是其整个SOA平台软件中的一块,通常会把BPM作为另一个单独的产品,例如BEA、甲骨文、IBM、东方通等公司。

    王志伟谈到:“SOA影响力的扩大,让目前的中间件产品有了更细分的市场,最明显的就是产生业务流程管理和总线两个独立的市场,而在以前这两个部分都统称中间件。”

    无论是IBM,还是BEA、甲骨文等公司都在套件产品的同时,推出了单独的BPM产品和ESB产品,对于用户服务而言就有了更多的选择,因为这些产品可以与其他厂商的中间件产品相互搭配使用,中间件产品原来的功能也是集成的,ESB的成熟对原有套件型中间件产品市场产生了不小的冲击。

    王志伟说: “SOA带来了ESB与BPM等产品市场的细分,是一个重新洗牌的机会,但对于国内的中间件厂商而言,更需要完善主要产品的功能,还不可能与国外的平台厂商全面竞争,重点突破是目前能做的事。”

    朱律玮谈到:“东方通的ESB产品线不会追求大而全,实用是第一位的,对于里面的关键技术都做到最好,例如连接服务和流程服务是我们的重点,其他一些产品可能会寻找合作伙伴或开源产品。”

0