UDDI基础知识

UDDI(Universal Description, Discovery, and Integration)是基于HTTP、XML等标准,提供Web服务发现和描述的行业基础架构。它包含了企业、服务、技术模型(tModel)等信息,通过注册中心进行服务注册和发现。tModel定义了服务接口规范,而绑定模板(bindingTemplate)则包含服务入口点和调用技术细节。UDDI通过API提供编程交互,支持服务请求者解答‘谁、什么、在哪里和如何’的问题。" 43186045,2038519,颠倒二叉树的三种解决方案,"['二叉树算法', '数据结构', '递归', 'LeetCode', '树形问题']

一、什么是UDDI

  1. UDDI基于一组常见的行业标准,包括HTTP,XML,XML Schema和SOAP,为基于Web服务的软件环境提供了一个可互操作的基础基础结构,用于可公开使用的服务和仅在组织内部公开的服务。

  2. 仅当潜在用户发现足以允许其执行的信息时,Web服务才有意义。

  3. UDDI的重点是定义支持描述和发现服务的一组服务。

  4. 商业,组织和其他Web服务提供商

  5. 他们提供的Web服务

  6. 用于访问这些服务的技术接口。

  7. 提供一种简单的机制来支持Web服务及其规范的发现。

  8. 不要尝试定义描述语言本身,也不要尝试直接存储支持的XML元素。

 

二、UDDI的工作机制

  1. UDDI注册中心包括:

    1. 以编程方式可访问的业务及其所支持服务的描述。

    2. 引用特定于行业的规范,分类法定义和标识系统。

  2. UDDI注册了两种信息

    1. tModel技术模型:抽象服务协议 用于描述特定Web服务的行为

    2. businessEntity服务实现者:引用多个tModel提供有关其行为和规范的描述

  3. 工作机制

  1. 步骤

    1.  软件公司和标准机构定义与业务相关的规范-tModels

    2. 公司注册其业务及其提供的服务的描述

    3. UDDI注册中心为每个实体和tModel分配一个唯一通用标识符(UUID)密钥。

    4.  其他客户使用UDDI注册中心发现感兴趣的服务。

    5.  其他企业可能会调用这些服务,从而实现动态集成。

 

三、UDDI数据模型

  1. 三组注册表信息

    1. 白页:企业的基本信息 (名称,联系信息,企业描述)

    2. 黄页:使用多种分类系统支持分页

    3. 绿页:与服务关联的绑定信息,提供对那些服务实现的技术规范的引用,以及指向各种基于文件和URL的发现机制的指针

  2. E-R图

 

  1. 相关名词

    1. businessEntity商业实体:有关发布有关服务族的信息的一方的信息

    2. businessService商业服务:有关特定服务的描述性信息

    3. bindingTemplate绑定模板:有关服务入口点和施工规格的技术信息

    4. publisherAssertion:由双方之一断言的有关双方关系的信息

    5. tModel:服务或分类规范的描述。 技术指纹的基础

    6. 绑定模板数据包含对tModel的引用,这些tModel指定服务的接口规范

<businessEntity xmlns="urn:uddi-org:api" businessKey="BBBBBBBB-BBBB-BBBB-BBBB">
        <name>Contoso Finance Services</name>
        <description xml:lang="en">Corporate Finance</description>
        <businessServices>
            <businessService
               businessKey="BBBBBBBB-BBBB-BBBB-BBBB"    
               serviceKey="CCCCCCCC-CCCC-CCCC-CCCC">
                 <name>Credit Check</name>
                 <bindingTemplates>
                 <bindingTemplate serviceKey="CCCCCCCC-CCCC-CCCC-CCCC" 
                                  bindingKey="DDDDDDDD-DDDD-DDDD-DDDD">
                 <accessPoint URLType="https">
                      https://contoso.com/credit.aspx
                 </accessPoint>
                 <tModelInstanceDetails> 
                    ……
                 </tModelInstanceDetails>
                 </bindingTemplate>
                 </bindingTemplates>
           </businessService>
    </businessServices>
    <categoryBag>
    ……
    </categoryBag>
</businessEntity>

四、UDDI数据模型细节

  1. <businessEntity>包含有关服务提供商的一般信息以及服务的集合。 它还包括分类,在<categoryBag>中通过引用tModel来指示

  2. businessEntity属性

  1. <businessServices> 集合 包含相关Web服务的功能分组集。

  2. businessServices属性

  1. <bindingTemplate>包括将用于调用Web服务的URL,以及对描述所实现协议的tModel的引用。它包含<accessPoint>, <accessPoint>传达适用于调用特定Web服务的入口点地址。

  2. <bindingTemplate>属性

 

五、抽象协议:tModels

  1. tModel结构用于提供描述符合规范,概念甚至共享设计的能力,这是tModel结构所扮演的角色之一。

  2. 应用范围

    1. 定义技术指纹

    2. 定义抽象名称空间引用

  3. tModel属性

  1. 定义技术指纹

    1. 可以将预先约定的规范建立为唯一的技术标识,而该技术标识又是tModel

    2. 注册的Web服务可以引用<bindingTemplate>中的tModel来表示符合tModel中定义的规范。

    3. 通过这种方法,可以搜索与特定规范兼容的注册Web服务。

    4. tModelKey成为给定规范所独有的技术指纹,而无序引用的tModelKey集则成为<bindingTemplate>的技术指纹。

    5. 技术指纹的用法实例

<tModelInstanceDetails>

    <tModelInstanceInfo tModelKey="uuid:da648ae7-6805-4fbe-9830-50f7ed73c2be">

        <instanceDetails>                   

            <instanceParms>ProductOWLURI</instanceParms>

        </instanceDetails>

    </tModelInstanceInfo>

    <tModelInstanceInfo tModelKey="uuid:09c569de-945f-4674-b408-b38f45d567e8" />

</tModelInstanceDetails>
  1. 定义抽象名称空间引用

    1. 在<identifierBag>和<categoryBag>的定义中,tModels被用作命名空间引用。

    2. 命名空间引用的用法样例

<categoryBag>

    <keyedReference tModelKey="uuid:1ff729f2-1948-46cf-b660-31ec107f1663"     

                    keyName="Computer and Peripheral Equipment Manufacturing"

                    keyValue="33411" />

</categoryBag>

六、UDDI APIs

  1. UDDI提供了一种编程模型和架构,用于定义与注册表进行通信的规则

  2. UDDI本身就是Web服务,通过指定的一组SOAP接口与UDDI进行交互

  3. UDDI规范中所有API均以XML定义,包装在SOAP信封中并通过HTTP发送

  4. UDDI在客户机和注册中心之间的流动

  1. SOAP API 允许执行查询和发布操作

<soap:Envelope>

   <soap:Body>

      <find_business xmlns="urn:uddi-org:api">

          <categoryBag>

              <keyedReference

                     tModelKey="uuid:1ff729f2-1948-46cf-b660-31ec107f1663"     

                     keyName="Computer and Peripheral Equipment Manufacturing"

                     keyValue="33411" />

          </categoryBag>

      </find_business>

   </soap:Body>

</soap:Envelope>

七、UDDI总结

  1. UDDI是一种行业标准,为发布和定位Web服务提供元服务

  2. UDDI规范记录了有关Web服务的多种类型的信息,这些信息可以帮助服务请求者确定问题的答案,例如“谁,什么,在哪里和如何”。

  3. * who:关于企业的简单信息

  4. * What:包括行业代码和产品分类的分类信息,以及有关已注册Web服务的描述性信息

  5. * where:可以通过其访问每种服务的注册信息

  6. * how:关于给定服务的接口和其他属性的注册参考。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值