理解UDDI(1):UDDI服务实施的体系架构

来源:互联网 发布:戒赌吧 出名 知乎 编辑:程序博客网 时间:2024/06/06 09:16

理解UDDI(1)UDDI服务实施的体系架构

(本文最初由 IBM developerWorks 中国网站发表,其网址是http://www.ibm.com/developerWorks/cn/)

(本文是我在developerWorks专栏发表的UDDI服务实施的体系架构,需要浏览未缩减版原文,请访问http://www.ibm.com/developerWorks/cn/)

统一描述、发现和集成协议(UDDI, Universal Description, Discovery and Integration)是一套基于Web的、分布式的、为Web服务提供的信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web服务注册以使得别的企业能够发现的访问协议的实现标准。

Web服务是下一代的WWW,它允许在Web站点上放置可编程的元素,使得能进行基于Web的分布式计算和处理。UDDI注册中心的创建目的就是为促进企业的Web服务的发展及为企业发现适当的Web服务。

本文主要描述了基于UDDI标准规范的UDDI注册中心的实施的体系架构,以及那些基于UDDISOAPWeb服务的实现架构。

基本概念

UDDI规范UDDI规范V1版包括两个规范文本,UDDI Programmer’s API V1.0(UDDI程序员API规范1.0)UDDI Data Structure Reference V1.0(UDDI数据结构参考1.0)。前者定义了UDDI Operator Site能够支持的API接口,而后者则描述了在API中具体XML描述的数据结构的具体定义。UDDI规范是UDDI Operator Site是实现蓝本,也是需要访问UDDI RegistryWeb服务的参考规范。

UDDI Registry (UDDI注册中心)UDDI Registry是所有提供公共UDDI注册服务的站点的通称。UDDI Registry是一个逻辑上的统一体,在物理上则是以分布式系统的架构实施的,而不同站点之间是采用P2P(对等网络)架构实施的,因此访问其中任意一个站点就基本等于访问了UDDI Registry

UDDI Operator Site (UDDI注册中心操作入口站点,简称UDDI操作入口): UDDI Operator SiteUDDI Registry中每一个对等结点,对于UDDI Operator Site的查询所获得的结果是覆盖全UDDI Registry中的信息的,信息查询无需身份认证;而在UDDI Operator Site上进行信息发布则必须使用该UDDI Operator Site自身的用户方能实施,同时以后的更新、删除都必须通过这个Operator Site,并使用初始发布时使用的用户进行权限认证。

Compatible UDDI Registry(兼容的UDDI注册中心): 所有兼容UDDI规范但并非属于提供公共服务的UDDI Registry的个别UDDI注册中心,都称为兼容的UDDI注册中心。

UDDI - 技术发现层

统一描述、发现和集成协议(UDDI)规范一个由Web服务所构成的逻辑上的云状服务,同时也定义了一种编程接口,这种编程接口提供了描述Web 服务的简单框架。规范包括几份相关的文档和一份XML Schema ,用来定义基于SOAP 的注册和发现Web 服务的协议。这些规范由来自多家业界主要公司的技术人员和管理人员花费了几个月的时间制定完成。这些公司也担负起实现第一批UDDI商业注册中心服务的任务,这些服务将可以被所有人所访问,同时其多个合作站点之间能够无缝地共享注册信息。

P2P(Peer to Peer)数据同步

UDDI的核心系统实施中,采用的是P2P(Peer to Peer)的体系架构。从UDDI Registry的外部来看,UDDI Registry对于用户而言是一个整体的服务,而不同的UDDI操作入口站点(Operator Site)是整个UDDI Registry服务的不同的访问入口,用户信息是与访问入口相关联的,而用户注册的信息在查询上与访问入口无关,所有用户可以任意选择UDDI操作入口站点(Operator Site)进行信息查询,获得的数据的范围是覆盖所有UDDI Registry中逻辑存在的数据的。UDDI操作入口站点(Operator Site)的职责是具备注册数据的托管权,每个注册数据条目的所有权有两级,第一层次它是属于某个操作入口站点的,第二层次它是属于某个操作入口站点上注册的用户(发布者)的。值得注意的是,不同的操作入口站点可以有不同的用户认证机制和不同的用户管理方法。

UDDI信息模型

UDDI 注册使用的核心信息模型由XML Schema 定义。使用XML 是因为它提供了平台无关的数据描述并很自然的描述了数据的层次关系。而选择XML Schema 是因为它支持丰富的数据类型,便捷的描述方式及其按信息模型对数据进行验证的能力。

UDDI XML Schema 定义了四种主要信息类型,它们是技术人员在需要使用合作伙伴所提供的Web 服务时必须了解的技术信息。它们是:商业实体信息(businessEntity)、服务信息(businessService)、绑定信息(bindingTemplate)和服务调用规范(tModel)的说明信息。

查询API与发布API

查询API包含两类调用,使程序能快速地定位候选商业实体、Web服务及其调用规范,然后在最初调用获得的初始信息的基础上,获得进一步的相关信息的细节。这类以find_xx命名的API提供了多种搜索标准,从而能对注册中心中的数据进行广泛地搜索。

发布API包括四个save_xx 函数和四个delete_xx 函数,每个对应于一个UDDI主要结构(businessEntitybinsinessServicebindingTemplatetModel)

总结

本文着重介绍了UDDI实施的服务体系架构,简要介绍了注册信息模型和查询/发布API。我将在以后的文章中详细介绍信息模型并结合查询/发布API介绍UDDI服务的使用方式及注意事项。