服务注册库在 SOA 的戏份越来越重

  • Jean-Jacques Dubray
  • 郭晓刚

2007 年 6 月 30 日

话题:SOA治理架构

从 2000 年UDDI 规范(支持服务的动态发现的 SPI)启动以来,“服务注册库(service registry)”的概念已经成为面向服务架构(Service Oriented Architecture)的柱石。最初的想法是,我们需要一个全局性的黄页,当采用“动态”的消费者模型的时候,可以用来查询可供访问的服务。跟最初的情形相比,如今“服务注册库”已经有了显著的发展。首先,当人们失去对“发现 - 消费”的模式失去兴趣以后,微软、IBM 和 SAP 提供的全局注册库因为罕有人在其上发布服务而濒临关门。随后,Systinet等先驱认识到注册库是企业 SOA 的关键要素——注册库和 SOA 结合让客户能够在组织内部利用已经由组织内的其他部门建立的服务——从而为“服务注册库”开创了一个蓬勃的新市场。“你无法重用你无法找到的东西”这句老调应该牢记。也就是说没有企业范围的本地注册库,你就没法得到 SOA 带来的主要优势。当然,很多人开始都用电子表格来管理,但很快电子表格就应付不来了。

注册库的发展并没有到此为止;当人们逐渐意识到服务的元数据(Schema、WSDL……)需要以一致的方式存储并进行版本控制的时候,仓库(repository)成为了注册库的互补。实际上 ebXML 在 2001 年的时候就已经有先见之明,制定了注册库和仓库的规范

随着 ESB 市场的增长,注册库开始支持运行时的服务端点查找(service end point look-up)。这种能力演变成了被广泛使用的中介(mediation)模式,这种模式有助于防止服务的新版本的部署影响到服务的消费者。这种模式还可以跟一些业务规则一起运用,来为特定的请求和特定的客户选择最合适服务端点。这种模式的潜力无穷,当它跟某种监控设施结合运用的时候,还可以帮助你从负载平衡的角度或者根据特定业务需求,来确保服务级协定(SLA)不被破坏。

同时,“治理(Governance)”的概念也逐渐显露出来。如果我们打算构建可重用的服务,那么,就必须按照客户希望的重用方式来设计、建造和运作这些服务。Infravio 和 Systinet 是最早提供这种能力的其中两家。此时,市场已经成熟,先驱企业被收购(Systinet 被 HP、FlashLine 被 BEA、Infravio 被 Software AG 收购),开发的新产品(SOA Software)也更加注重 SLA。注册库成为非常重要的战略需要,IBM 等大型的基础架构供应商,包括目前的 SAP,选择开发他们自己的注册库并将其与自己开发的工具和基础架构紧密结合。我们可以预料微软和 Oracle 也会跟进。

Susanne Rothaug,SAP 的产品经理,在她的博客上详细介绍了这个 SAP注册库新产品的功能。SAP 再次拓宽了注册库的内涵,他们提供的单一设计环境,将业务架构和服务设计者以及服务消费者联系起来,更好地支持了 IT 和业务之间的安排。

有了这个新方向,我们可以期待服务注册库将成为企业的中央信息系统,担负起存储全部企业元数据,支持和联结业务架构、企业架构和解决方案架构的重任。好戏现在才开始!

SOA治理架构