CN101047512A - 服务注册器以及相关***和方法 - Google Patents
服务注册器以及相关***和方法 Download PDFInfo
- Publication number
- CN101047512A CN101047512A CNA2006100710383A CN200610071038A CN101047512A CN 101047512 A CN101047512 A CN 101047512A CN A2006100710383 A CNA2006100710383 A CN A2006100710383A CN 200610071038 A CN200610071038 A CN 200610071038A CN 101047512 A CN101047512 A CN 101047512A
- Authority
- CN
- China
- Prior art keywords
- service
- register
- local
- logger
- remote
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5055—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/46—Indexing scheme relating to G06F9/46
- G06F2209/462—Lookup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5015—Service provider selection
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Exchange Systems With Centralized Control (AREA)
- Multi Processors (AREA)
Abstract
本发明公开了对SOA中服务注册器和相关的服务传播、查询和服务调用过程中路由方法的改进。所述服务注册器与本地服务域和远程服务注册器相连,包括:本地服务信息管理器,用于对本地服务域中的本地服务进行注册,本地服务信息存储库,与本地服务信息管理器相连,用于存储本地服务的服务元数据;其特征在于所述服务注册器还包括:远程服务信息管理器,与本地服务信息管理器和远程服务注册器相连,用于从远程服务注册器接收远程服务索引;远程服务信息存储库,与所述远程服务信息管理器相连,用于存储从远程服务注册器接收的远程服务索引。通过使用所述服务注册器,便于在不同服务注册器间的服务控制和共享。
Description
技术领域
本发明涉及面向服务的体系结构(SOA)。更具体地说,本发明涉及对SOA中的服务注册器(service registry)的改进和对相关的服务传播、查询、选择和服务调用过程中路由方法的改进。
背景技术
SOA是“service-oriented architecture”的缩写,它是指一个应用可以由一系列独立但又相互协作的子***或服务组成。这样的结构将各个服务独立出来,只把需要声明的接口告诉给其他的服务。SOA不仅使***架构师们组织并减少他们所设计的产品中的依赖关系,而且在开发环境中提供了一个经过裁减的服务套装。这种方法可被用来支持已有的需求,比如企业应用整合,还为满足特殊的商业需要,例如和电子商务相关的解决方案的快速制定,提供扩展平台的基础。
作为SOA的一种基础传输形式,web服务(web service)的使用日益普遍。所谓web服务,是指由企业发布的完成其特别商务需求的在线应用服务,其他公司、合作伙伴的应用软件能够通过网络(包括因特网、企业内部网、企业外部网等)来访问并使用这些在线服务。web服务作为企业中有效的流程集成的一种机制在商业中被采用,诸如纳斯达克和澳大利亚股票交易***等都是web服务的著名例子。实际上,web服务可以执行从简单的请求到复杂商务处理的任何功能。
任何SOA或web服务都包括三个角色:服务请求者(或说服务消费者)、服务提供者和服务注册器,如图1所示。图1的体系结构100包括服务请求者110,服务提供者120和服务注册器130。
其中,服务提供者120负责建立一个有用的服务,并为它创建一个服务元数据,然后将这个元数据发布给一个或多个服务注册器130,以便服务请求者从一个或多个服务注册器130那里查询服务元数据。元数据可以包括服务的功能性描述、非功能性描述,策略以及相关的数据等。
服务注册器130是参与SOA的服务的元数据存储库,负责维护和公布服务提供者120发布在其上的服务元数据,并允许服务请求者110在本服务注册器130所拥有的服务描述里进行查询。在现有的SOA中,服务注册器130不需要参与服务请求者和服务提供者交互过程。
另外,在服务请求者110和服务提供者120还可以有一些中介者(intermediator),例如网关、企业服务总线(EBS)等(未示出)。这些中介者在服务请求者110和服务提供者120之间起到简单的请求-响应传递作用。
图1还示出SOA包含服务请求者110、服务提供者120和服务注册器130之间的三种操作:发布、查找和绑定,这些操作定义了SOA各角色之间的合约。
目前,在如上描述的SOA或web服务***中,服务注册器只能使用通用描述发现与集成(UDDI)标准。服务注册器的所有厂商(如IBM、Microsoft、SUN、BEA、Systinet等)都在他们的产品中支持UDDI 3.0。UDDI是由OASIS定义的标准,其核心是定义了一组支持描述和发现下述内容的服务:
1)企业、组织和其他web服务提供者;
2)可用的web服务;
3)可用于访问web服务的技术接口。
UDDI根据一组共同的行业标准,为基于web服务的计算环境提供了基本的基础设施。
但是,使用UDDI标准导致SOA或web服务在服务控制和共享等方面存在一些技术局限性。
一方面,对于控制和管理服务元数据,采用UDDI标准存在下述问题:
1)缺少可扩展的数据模型和查询方法,固定的服务元数据格式不能满足添加更多的特征或服务特定的属性的需要。
2)缺少服务的生命周期管理。
3)缺少在服务调用过程中的运行时控制,这是因为在现有的SOA三角形体系结构中,服务注册器只在服务的静态配置过程中发挥作用,而不参与服务请求者和服务提供者之间(包括网关或EBS等)服务运行时的动态交互过程。
4)缺少功能扩展的机制。
另一方面,在web服务的使用日益广泛的今天,随着遵从不同标准(例如WSRP、uPnP等)的更为精细的服务的出现,服务数量也日趋增长。于是,服务注册器的数量也随之迅速增长。在这种情况下,迫切需要在关联的服务注册器之间共享信息,来促进web服务技术发展。
按照UDDI规范版本3的规定,在UDDI注册器之间通过复制服务元数据来实现信息共享,即由一个导入者从源注册器获取UDDI实体的所有元数据,再将所述元数据复制到目标注册器中,这里的导入者是通过查询或订购API从一个或多个源注册器读取数据并将其发布给目标注册器的发布者。有关在UDDI中进行信息共享的详细信息可参见“UDDI Version 3.0.2,UDDI Spec Technical committee Draft,Dated 20041019”。在UDDI注册器之间通过复制来实现服务共享这种机制存在着以下不足之处:
1)UDDI注册器的拓扑结构与因特网域的拓扑结构不同,因此难以操纵每个因特网自治***中的服务信息。
2)随着注册器和UDDI实体数目的增大,难以有足够的存储空间在一个注册器中复制所有实体的所有元数据。
3)通过复制实体的方式实现共享,缺少对在不同注册器中注册的相同实体的复本进行同步的机制。
4)由于不是所有共享UDDI实体都能复制在一个UDDI注册器中,一个UDDI客户机必须查询若干UDDI注册器来搜索目标UDDI实体。
5)随着注册器数量的增加,没有UDDI注册器的集中位置信息,从而客户机(特别是那些计算能力和通信带宽有限的客户机)很难找到并到达所有可访问的注册器。
鉴于上述情况,需要改进SOA或web服务的服务注册器,以提高在管理和共享服务方面的灵活性和可操作性。
发明内容
因此,本发明提出了新的服务注册器、以该服务注册器为中心的***结构、以及对服务进行传播、查询、以及选择和服务请求路由方法。本发明的基本思想在于:通过服务信息分布式索引和查询来扩展服务注册器的功能;通过仅在服务注册器之间复制服务索引(而不是服务元数据)来实现服务共享;通过使服务注册器参与到服务请求者和服务提供者之间的动态运行过程中来对服务进行运行时控制,从而突破由于使用UDDI标准所带来的技术限制。根据本发明的第一方面,提供一种服务注册器,其与本地服务域和远程服务注册器相连,包括:本地服务信息管理器,用于对本地服务域中的本地服务进行注册,本地服务信息存储库,与本地服务信息管理器相连,用于存储本地服务的服务元数据;其特征在于所述服务注册器还包括:远程服务信息管理器,与本地服务信息管理器和远程服务注册器相连,用于从远程服务注册器接收远程服务索引;远程服务信息存储库,与所述远程服务信息管理器相连,用于存储从远程服务注册器接收的远程服务索引。
根据本发明的第二方面,提供一种SOA体系结构,包括:元服务网络,包括:如上所述的服务注册器;与元服务网络并行的服务网络,包括:一个或多个端点;以及一个或多个中介者,介于所述端点之间;其中所述一个或多个端点可直接或通过所述一个或多个中介者与相应的服务注册器进行交互。
根据本发明的第三方面,提供一种用于在服务注册器间共享服务信息的方法,所述服务注册器之间在物理和/或逻辑上相连,所述方法包括:将服务提供者的服务元数据注册到所述服务提供者的本地服务注册器;由所述本地服务注册器将所述服务元数据中的服务索引传播到远程服务注册器。
根据本发明的第四方面,提供一种用于由服务请求者向服务注册器查询服务信息的方法,所述服务注册器之间在物理和/或逻辑上相连,所述方法包括:所述服务请求者向本地服务注册器发送查询服务信息的请求;所述服务注册器根据远程服务的服务索引,将所述请求转发给相关的远程服务注册器,直到到达一个或多个目标远程服务注册器;所述一个或多个目标远程服务注册器将请求的服务元数据作为响应发送回所述本地服务注册器;所述本地服务注册器将所述响应发送给所述服务请求者。
根据本发明的第五方面,提供一种用于由服务请求者调用远程服务域中的服务的方法,所述方法包括:由所述服务请求者将关于调用远程服务域中的服务的请求发送给中介者,并由中介者发送给本地服务注册器;所述本地服务注册器通过查询服务索引,将该请求传送到远程服务域;远程服务域的中介者将所述消息发送给与所述远程服务域相关联的服务注册器;由与所述远程服务域相关联的服务注册器将所述服务经由远程服务域的中介者发送到所述服务提供者,以便提供给所述服务请求者。
通过使用本发明,为服务注册器赋予了新的作用和功能。其一,每个服务注册器都能完全控制一个或多个自主服务域,这便于注册器的拥有者(企业、组织或部门)维护服务信息。其二,每个服务注册器都将提供下述功能:在本地服务域中管理静态和动态服务元服务(本地数据和远程数据索引);在所有连接的注册器中查询服务元数据;在服务域中或者跨服务域进行以服务注册器为中心的服务选择和路由。
通过使用本发明,提供了部署用于服务路由的功能模块的可扩展机制,既实现了象应用服务器那样的用于服务路由和选择的功能增强机制,又实现了与外部***(例如,计费、商业规则、安全性、监控等)的连接。
另外,通过使用本发明,能够实现域之间的连接,主要体现在以下三点。首先,本发明的服务域的拓扑结构更加自然,其与能够映射到企业和组织的应用域的因特网自治***的拓扑结构类似。其次,在本发明中,所有注册器是通过索引而不是通过复制服务元数据进行连接的。最后,所有服务请求者和中介者(ESB、WS网关等)都无需具备关于本地服务域之外的服务的信息。
附图说明
在附图中,相同的组件使用相同或类似的附图标记。
图1为现有SOA体系结构的示意图。
图2是根据本发明的以服务注册器为中心的***的拓扑结构示意图。
图3为根据本发明的服务注册器的基本结构。
图3A示出了根据本发明的服务索引的一个示例性数据结构。
图3B示出了包括附加细节的服务注册器的结构示意图。
图4示出了根据本发明对服务进行注册、传播和查询的组合过程。
图4A给出了一个示例性的传播路径。
图4B给出了一个示例性的查询路径。
图5示出了根据本发明对服务调用过程中消息传输路由和选择的过程。
图5A表示在结合图2的拓扑结构中执行图5的过程的示意图。
图6是根据本发明由服务注册器注册和传播服务的方法的流程图。
图7示出了根据本发明由服务请求者向本地服务注册器查询服务元数据的方法。
图8示出了根据本发明进行服务路由和选择的方法。
图8A示出了根据本发明的优选实施方式进行服务路由和选择的方法。
具体实施方式
下面将参照附图描述本发明的原理。
在描述根据本发明的全新的服务注册器之前,我们先了解应用所述服务注册器的***的总体拓扑结构,图2是这种拓扑结构的示意图。该拓扑结构包括元服务平面(或称为元服务网络)105和服务平面(或称为服务网络)106。元服务平面105包括若干服务注册器101,各服务注册器101之间的连线表示它们在物理和/或逻辑上相连。服务平面106可包括以椭圆形包围的若干个服务域D1-D4,每个服务域D1-D4中又包含若干个端点103和中介者102,服务平面106还可包括没有形成服务域的单个端点和/或中介者(如图2中服务域D2和D3之间的单个中介者102)。应当指出,图2是示例性的,不应将其理解为对服务注册器101、中介者102、端点103以及服务域104等的实际个数和连接方式的任何限制。
在图2的拓扑结构中,各服务注册器101负责本地服务域中的服务注册和传播并动态跟踪本地服务信息;负责响应客户软件开发者和服务请求者的服务查询请求(可扩展查询功能以获得目标服务的元信息);并且负责根据与中介者102的协调进行服务选择和路由。服务注册器101彼此之间进行交互,所有服务注册器一同构成了元服务平面。取决于应用域的情况,服务注册器可以具有多种拓扑结构,例如星形结构、全网格结构、基于超对等的结构、纯对等结构等等。应当指出,所述服务注册器之间采用怎样的拓扑结构和连接机制并不影响本发明的实施。
在服务平面中,各服务域D1-D4是在指定服务注册器中注册的web服务的逻辑集合。服务域可以是具有明确边界的域(例如,因特网域),也可以是不具有明确边界的域(例如,是因特网域的一部分)。每个服务注册器可以对应一个服务域,称为该服务注册器的“本地服务域”。
在服务域中,各中介者102用于在服务域中或者在服务域之间转发和转换信息,为服务请求者和服务提供者之间的服务路由提供通路。诸如企业服务总线(ESB)或服务网关之类的部件可以充当所述中介者102。
各端点103是消息的始发者或最终目的地,它可以包括服务请求者和服务提供者。
所有连接的端点和中介者构成了与元服务平面105并行的服务平面106。
以下将参照图3对根据本发明的服务注册器200的基本结构进行说明。在图3中,服务注册器200分别与本地服务域106和远程服务注册器200’相连。应当理解,为了便于说明,图3只示出了一个远程服务注册器200’,但实际上服务注册器200可以与任何数量的远程服务注册器相连。另外,服务注册器200包括有本地服务信息管理器201、本地服务信息存储库202、远程服务信息管理器203以及远程服务信息存储库204。通过使用如图3所示的结构,可以在服务注册器200进行本地服务注册、传播和更新的过程以及服务请求和调用的过程。
对于本地服务注册、传播和更新的过程,本地服务信息管理器201与在本地服务域106中的服务提供者或管理工具相连,以便服务提供者或管理工具能够(例如,通过API)将服务注册到本地服务信息管理器201中。本地服务信息管理器201还与本地服务信息存储库202相连,用于一方面将在本地服务域中注册的服务元数据存储到本地服务信息存储库202中,另一方面直接或间接地动态跟踪本地服务的实时状态,并且在本地服务发生变化时,更新本地服务信息存储库202中的相关服务元数据。此外,本地服务信息管理器201还与远程服务信息管理器203相连,以便将本地服务信息以及本地服务信息的更新(例如,服务的状态改变)通知给远程服务信息管理器203,从而传播到所有其他直接连接的服务注册器200’。在传播本地服务信息时,本地服务信息管理器201会从本地的服务元数据中抽取适于作为服务索引的信息。
“服务元数据”是指用于对服务进行描述的元数据,例如:服务的功能性描述,包括服务接口描述,如基于WSDL(Web ServiceDefinition Language)的描述(含操作,消息格式等);服务的非功能性描述(如服务拥有者-IBM,XSD(XML数据类型定义),服务位置-北京);服务策略(如基于WS-Policy(网络服务策略)等标准的服务策略描述,如安全,事务和可靠性策略等);以及其他元数据。
术语“索引”或“服务索引”是指在本地服务注册器中存储的关于远程服务的信息。例如,服务注册器200和200’互为远程服务注册器,服务注册器200只存储关于服务注册器200’的服务的服务索引(而不是服务元数据),服务注册器200’也只存储关于服务注册器200的服务的服务索引。
适于作为索引或服务索引的元数据信息包括但不限于:WSDL描述、非功能性描述中的服务拥有者或服务位置等,以及其它适于作为索引的服务元数据的属性名称、属性范围以及服务的上一跳地址等,如下文详述。并且其中,用于作为服务索引的元数据信息可以由本地服务信息管理器201提取,也可以通过其它适宜方式提取,或者由服务提供者在注册服务时指定。
图3A示出了根据本发明的服务索引的一个示例性数据结构,其包括至少三个字段:属性名称/类型280、属性范围281以及上一跳地址282。能够理解,所述索引表还可以根据需要包括任何其他所需的字段。
表1给出了一系列的索引表项,其中的元数据项目可以用于索引。
表1
属性名称/类型 | 属性范围 | 上一跳地址 | |
服务注册器 | 中介者/端点 | ||
公司名称 | IBM | SR1 | I1 |
电话号码 | 66660000-66660010 | SR1 | I1 |
地理位置 | 北京 | SR1 | I1 |
发布时间 | 2005年 | SR1 | I1 |
服务接口名称 | http://www.ibm.com/service1/service1-5.wsdl | SR1 | I1 |
在表1中,属性范围字段可以是单一的属性值,也可以是一个范围内的属性值。上一跳地址表示该索引值传播路径中相对于本服务注册器的上一服务注册器的地址和相应的中介者/端点地址。
下面继续参看图3,本地服务信息存储库202与本地服务信息管理器201相连,用于存储本地服务域中服务提供者的服务元数据及其更新。
远程服务信息管理器203与本地服务信息管理器201连接,以便当由来自本地服务信息管理器201的事件触发时,例如根据一定的连接策略将本地服务信息传播到连接的远程服务注册器200’。远程服务信息管理器203还与远程服务注册器200’相连,用于一方面接收远程服务注册器200’发来的远程服务索引并传播给其他远程服务注册器,另一方面将抽取的有关本地服务的服务索引传播给例如远程服务注册器200’。另外,远程服务信息管理器203还与远程服务信息存储库204相连,用于将接收到的远程服务索引存储于其中。
远程服务信息存储库204用于存储从远程服务注册器200’传播来的服务的索引。
对于服务请求和调用的过程,本地服务信息管理器201和远程服务信息管理器203与在本地服务域106中的中介者相连,用于从中介者接收由服务请求者进行的服务请求。
响应于收到中介者的请求,本地服务信息管理器201和远程服务信息管理器203分别从本地服务信息存储库202和远程服务信息存储库204中提取满足服务请求的服务元数据和服务索引并返回给中介者。应当指出,由于调用本地服务的过程属于现有技术,而本发明旨在改进对于远程服务的调用,因此本发明一般假定只有远程服务能够满足服务请求。
图3B示出了包括附加细节的服务注册器200的结构示意图,其中除图3所示的各组件外,服务注册器200还包括基本连接策略库205、插件部分210以及查询处理器209。
基本连接策略库205与远程服务信息管理器203连接,用于存储在各服务域(服务注册器)之间建立连接的基本策略的描述,服务注册器或中介者就是根据这些基本策略的描述来确定与谁交换信息的。所述连接策略可以规定:服务注册器间在物理上是否连接;对于在物理上连接的服务注册器,在逻辑上是否可以在它们之间共享信息;以及在逻辑上是否需要针对特定的服务注册器屏蔽掉特定的信息。应当理解,规定服务注册器间的连接策略,可进一步提高SOA***的智能性和可操作性,但是实际上,各服务注册器之间也可以遵从固定不变的连接关系,从而不需要存储任何连接策略。
由虚线框包围的插件部分210是对于服务注册器功能进行扩展的部分。包括统一以标号207表示的若干个注册器插件(reglet)以及一个注册器插件容器206。
注册器插件207可以包括有助于进行服务选择和路由功能的任何静态或动态插件,例如可以是包含在服务注册器内部的插件,也可以是通过与外部***208(如下所述)交互而实现的插件。注册器插件207可以从本地服务域接收服务的路由请求,并基于一定的连接策略(例如,基本连接策略库205中存储的策略)对本地服务域返回路由响应。注册器插件207能够实施服务选择和路由的逻辑。
所述各注册器插件207部署在注册器插件容器206中,并在其中形成一个列表或一个网状结构。注册器插件容器206提供了注册器插件207的运行时环境和上下文信息。例如,在运行时,注册器插件容器206可从中介者接收包含消息的源和目标信息的请求。随后,它查询基本策略并调用所有相关的注册器插件207,以进行服务的选择和路由。最后,注册器插件容器206可返回包含下一跳地址的响应。
外部***208与插件部分210连接,其可以为服务选择和路由提供信息,也可以使用来自插件部分210(例如注册器插件207)的信息。注册器插件207为所涉及的外部***208提供入口。外部***208的例子包括但不限于:用于全局安全性策略的安全性***、用于商业使用服务的计费***、用于QoS的网络业务***、需要用于数据挖掘和决策支持的统计信息的业务智能***、用于基于服务选择的商业合同的业务规则***等等。
查询处理器209与本地服务信息管理器201和远程服务索引管理器203连接,用于处理对本地服务注册器的查询请求。它主要有两种工作模式。在第一种模式中,当接收到来自本地服务域的请求时,它请求本地服务信息管理器201和远程服务索引管理器203来定位服务并将响应发送给服务请求者。在第二种模式中,当接收到来自其他服务注册器的请求时,它请求本地服务信息管理器201并将本地服务信息返回给服务请求者。
以下将结合图4、图4A和图4B对根据本发明的服务注册、传播和查询过程进行说明。
服务注册器注册和传播本地服务的过程
在图4中,假定服务域N中的服务提供者9有新的服务需要注册到其本地服务注册器5并与其他服务注册器共享。于是,在线路1.1(或1.1’)上,服务提供者9的服务被注册到其服务注册器5。这种注册可通过多种方式实现,例如由服务提供者或者第三方向服务注册器5进行注册(如线路1.1所示),或者由服务注册器5自动发现该服务(如线路1.1’所示)。接下来,在线路1.2上,服务注册器5,例如根据基本连接策略,将本地服务索引传播到与该服务注册器5连接的远程服务注册器。
图4A是一个示例性的传播路径,示出线路1.2的详细情况。在图4A中,以四边形表示元服务平面,其中包含标号为1-6的服务注册器,其中在例如服务注册器1、2之间的实线表示在逻辑上可以将服务索引从服务注册器1传播到服务注册器2,而在例如服务注册器2、3之间的虚线则表示在逻辑上不可以将服务索引从服务注册器2传播到服务注册器3。在图4A中,服务提供者9的服务被注册到服务注册器5后,可以传播到远程服务注册器1-4。以从服务注册器5→3→1的传播过程为例,服务注册器3会收到包括上一跳地址为服务注册器5的索引,而服务注册器1会收到包括上一跳地址为服务注册器3的索引。
服务请求者请求服务元数据的过程
继续参看图4,假定在服务域1中的服务请求者8向其本地服务注册器1查询具有特定参数(例如,服务时间最短、服务费用最少等等)的所有可用服务。于是,在线路2.1上,服务请求者8向服务注册器1发送查询请求。然后,在线路2.2上,服务注册器1根据其索引表(可能还有预定的基本连接规则)将请求转发给下一跳的服务注册器,并且在相关的服务注册器中重复执行这一步骤。
图4B示出了线路2.2的详细查询路径的一个示例。在图4B中,使用与图4A相同的元服务平面。服务注册器1收到查询请求后,当发现满足请求的服务索引中上一跳地址是服务注册器3(即,服务索引是通过服务注册器3传播来的),于是决定下一跳应将请求转给服务注册器3。接下来,服务注册器3通过与服务注册器1相同的方式确定下一跳应将请求转给服务注册器5。假定服务注册器5恰好是满足请求的服务索引所注册的服务注册器,这时操作将进入图4中的线路2.3。
在图4的线路2.3上,服务注册器5将沿着请求被转发的路径将请求的服务元数据发送给服务注册器1。最后,在线路2.4上,当服务注册器1收到响应时,再将该响应发送到其服务请求者。
以下将结合图5和图5A描述根据本发明对服务调用过程中消息传输路由和选择的过程。在图5A中,为清楚起见,对在各服务注册器间的连接、在与图5的过程相关的端点、中介者之间以及它们与服务注册器之间的连接使用实线表示,其余连接用虚线表示。另外,由双向箭头指示的线路左侧的标号代表从中介者到服务注册器的上行线路,双向线路右侧的标号代表从服务注册器到中介者的下行线路。
在图5和图5A中,假定服务域D1中的服务请求者A希望获得服务域D3中的服务提供者G的服务。于是在线路3.1上,服务域D1中的服务请求者A向中介者B发送一条消息,该消息的目标地址是服务域D3中的服务提供者G。然后,在线路3.2上,中介者B将路由请求发送到其服务注册器1。接着,在线路3.3上,服务注册器1通过查询服务索引,确定该请求下一跳应指向的中介者地址(例如是中介者C),于是服务注册器1将该下一跳地址告知中介者B。从而,在线路3.4上,中介者B将消息转发给中介者C。
根据本发明,线路3.4可以包含一系列的中介者和服务注册器之间的操作,直到消息到达目标服务域D3中的中介者F为止,下面将参照图5A对线路3.4的详细操作进行说明。
在线路3.4-0上,中介者B根据服务注册器1返回的地址将请求进一步发送到中介者C。接着,中介者C通过上行线路3.4-1继续查询本地服务注册器1,确定该请求的下一跳地址(例如是不同服务域D4中的中介者D),并通过下行线路3.4-2返回给中介者C。于是,中介者C进一步通过线路3.4-3将请求发送到中介者D。这时,中介者D通过上行线路3.4-4查询其本地服务注册器5。服务注册器5在确定请求的下一跳地址(例如,中介者E)后通过下行线路3.4-5返回给中介者D。随后,中介者D将请求发送到中介者E(线路3.4-6),并且中介者E将请求发送到其本地服务注册器4(线路3.4-7)。当服务注册器4确定了下一跳的地址(例如中介者F)后通过下行线路3.4-8返回给中介者E。于是,中介者E通过线路3.4-9将请求发送到目标服务域D3中的中介者F。这时,线路3.4上的操作完成,以下将继续参照图5描述后续过程。
如线路3.5所示,中介者F将路由请求发送到服务注册器6,从而服务注册器6选择服务域N中的目标服务。然后,在线路3.6上,中介者F接收目标的地址和元数据,并将服务消息转换为适当的格式。并且,在线路3.7上,中介者F将消息发送回服务提供者。最后,如线路3.8所示,服务提供者G将服务提供给服务请求者A。
由目标服务提供者G向服务请求者A提供服务可以有多种方式,例如,服务提供者G可以严格沿请求传输方向的反向将服务提供给服务请求者A(即,经过所有涉及的中介者和服务注册器),也可以沿请求传输方向的反向、但只经过服务平面中的中介者(即,忽略服务注册器)将服务提供给服务请求者A。如本领域技术人员所知,从服务提供者G向服务请求者A传送服务的过程还可以采用其他方式,本发明不在此一一枚举。
图6是根据本发明由服务注册器注册和传播服务的方法的流程图。
该方法在步骤600开始,随后进入步骤610。在步骤610中,将服务提供者的服务元数据注册到其本地服务注册器。随后,在步骤620中,由所述服务注册器将服务索引通知给远程远程服务注册器。该方法在步骤630中结束。
图7示出了根据本发明由服务请求者向本地服务注册器查询服务元数据的方法。应当指出,由于本发明主要涉及对查询远程服务的改进,因此忽略查询本地服务元数据的情况。
该方法在步骤700开始,随后进入步骤710。在步骤710中,服务请求者向本地服务注册器发送查询服务元数据的请求,例如请求满足特定要求(例如,服务位置为“北京”)的服务。在步骤720中,所述服务注册器通过查询远程服务信息管理器维护的服务索引表,找到满足要求的服务索引,并根据该索引将请求转发给下一跳的远程服务注册器。然后,重复步骤720的操作,直到请求转发到该服务索引所属的服务的远程服务注册器。随后,在步骤730中,目标远程服务注册器沿请求被发送的路线将请求的服务元数据作为响应发送回所述本地服务注册器。并且在步骤740中,本地服务注册器将所述响应发送给所述服务请求者。最后,该方法在步骤750中结束。
图8示出了根据本发明进行服务路由和选择的方法。同样,由于本发明主要涉及对调用远程服务的改进,因此忽略调用本地服务的情况。
该方法在步骤800开始,随后进入步骤810。在步骤810中,服务请求者将关于目标服务域中的服务的消息发送给中介者,由中介者进一步发送到本地服务注册器。接着,在步骤820中,本地服务注册器通过查询其远程服务索引,将请求传送到目标服务域。在步骤830中,目标服务域的中介者将所述消息发送给与之相关联的服务注册器。随后,在步骤840中,由与目标服务域相关联的服务注册器选择适当的服务并经由目标服务域的中介者发送到目标服务提供者。以便在步骤850中提供给服务请求者。最后,该方法在步骤860中结束。
在图8的步骤820中,可能需要如图5和5A所示那样,经过多跳后才将请求转发到目标服务域中。
而且,根据本发明的优选实施方式,可通过使用插件部分对图8的服务调用过程进行功能扩展,例如通过使用借助与外部***的交互对服务请求进行计费的插件,可对服务调用过程进行计费。在这种情况下,步骤820可进一步包括如图8A所示的操作。
在步骤821,本地服务注册器的插件部分接收来自服务请求者的请求。在步骤822中,注册器插件容器一方面从基本连接策略库中查找连接策略,另一方面调用相应的计费插件。在步骤823中,计费插件例如通过与相应的用于计费的外部***进行连接,执行对服务调用请求的计费过程。此后,在步骤824中,将执行了计费并具有特定的连接策略的调用请求发送到本地和远程服务信息管理器,以便在步骤825中,本地和远程服务信息管理器能够在步骤824的基础上继续查询服务索引,以得到下一跳中介者的地址,并在步骤826中通过注册器插件容器返回给中介者,以继续执行如图8所示的后续操作。
通过以上描述可以看出,本发明通过只在服务注册器间传递服务索引(而不是服务元数据),改善了现有SOA或web服务中由于使用UDDI标准带来的局限性。
本领域技术人员会认识到,可以以方法、***或计算机程序产品的形式提供本发明的实施例。因此,本发明可采取全硬件实施例、全软件实施例,或者组合软件和硬件的实施例的形式。硬件和软件的典型的结合可以是带有计算机程序的通用计算机***,当程序被加载并被执行时,控制计算机***,从而可以执行上述的方法。
本发明可以嵌入在计算机程序产品中,它包括使此处描述的方法得以实施的所有特征。所述计算机程序产品被包含在一个或多个计算机可读存储介质(包括,但不限于,磁盘存储器、CD-ROM、光学存储器等)中,所述计算机可读存储介质具有包含于其中的计算机可读程序代码。
已参考根据本发明的方法、***及计算机程序产品的流程图和/或方框图说明了本发明。流程图和/或方框图中的每个方框,以及流程图和/或方框图中的方框的组合显然可由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、嵌入式处理器或者其他可编程的数据处理设备的处理器,以产生一台机器,从而指令(所述指令通过计算机或者其他可编程数据处理设备的处理器)产生用于实现在流程图和/或方框图的一个或多个方框中规定的功能的装置。
这些计算机程序指令也可保存在一个或多个计算机的读存储器中,每个这种存储器能够指挥计算机或者其他可编程数据处理设备按照特定的方式发挥作用,从而保存在计算机可读存储器中的指令产生一种制造产品,所述制造产品包括实现在流程图和/或方框图的一个或多个方框中规定的功能的指令装置。
计算机程序指令也可被加载到一个或多个计算机或者其他可编程数据处理设备上,使得在所述计算机或者其他可编程数据处理设备上执行一系列的操作步骤,从而在每个这样的设备上产生计算机实现的过程,以致在该设备上执行的指令提供用于实现在流程图和/或方框图的一个或多个方框中规定的步骤。
以上结合本发明的优选实施方式对本发明的原理进行了说明,但这些说明只是示例性的,不应理解为对本发明的任何限制。本领域技术人员可以对本发明进行各种改变和变形,而不会背离由随附权利要求所限定的本发明的精神和范围。
Claims (23)
1.一种服务注册器,其与本地服务域和远程服务注册器相连,包括:
本地服务信息管理器,用于对本地服务域中的本地服务进行注册,
本地服务信息存储库,与本地服务信息管理器相连,用于存储本地服务的服务元数据;
其特征在于所述服务注册器还包括:
远程服务信息管理器,与本地服务信息管理器和远程服务注册器相连,用于从远程服务注册器接收远程服务索引;
远程服务信息存储库,与所述远程服务信息管理器相连,用于存储从远程服务注册器接收的远程服务索引。
2.根据权利要求1所述的服务注册器,其特征在于所述本地服务信息管理器还包括动态跟踪本地服务的实时状态的装置,其响应于本地服务的变化来更新本地服务信息存储库。
3.根据权利要求1或2所述的服务注册器,其特征在于所述本地服务信息管理器还包括将本地服务的服务元数据中的服务索引及其更新传送到所述远程服务信息管理器的装置,并且所述远程服务信息管理器还包括用于将来自所述本地服务信息管理器的本地服务的服务元数据中的服务索引及其更新传播到远程服务注册器的装置。
4.根据权利要求1所述的服务注册器,其特征在于所述远程服务信息管理器还与在本地服务域中的中介者相连,包括用于从中介者接收由服务请求者进行的调用远程服务域中的特定服务的请求,根据该特定服务的服务索引获得请求应被转发到的下一跳中介者的地址,并将请求返回给所述中介者的装置。
5.根据权利要求4所述的服务注册器,其特征在于还包括:
插件部分,与本地服务信息管理器和/或远程服务信息管理器相连,用于在来自中介者的请求被发送到本地服务信息管理器和/或远程服务信息管理器之前,先对其执行相应的注册器插件功能。
6.根据权利要求5所述的服务注册器,其特征在于所述插件部分包括:一个或多个注册器插件以及注册器插件容器,
其中注册器插件容器用于为注册器插件提供运行时环境和上下文信息,用于从中介者接收请求,并查询基本策略和调用所有相关的注册器插件,并且还用于将服务索引信息返回给中介者;
一个或多个注册器插件,与所述注册器插件容器相关联,用于对从中介者接收的服务请求执行相应的注册器插件功能,随后再将服务请求提供给本地服务信息管理器和/或远程服务信息管理器。
7.根据权利要求6所述的服务注册器,其中所述插件部分还与外部***连接,并用作所述外部***到服务注册器的入口,所述外部***包括至少下述之一:用于全局安全性策略的安全性***、用于商业使用服务的计费***、用于QoS的网络业务***、需要用于数据挖掘和决策制定的统计信息的业务智能***以及用于基于服务选择的商业合同的业务规则***。
8.根据权利要求1所述的服务注册器,其特征在于还包括:
基本连接策略库,与远程服务信息管理器连接,用于存储在各服务注册器之间建立连接的基本策略的描述。
9.根据权利要求1所述的服务注册器,还包括查询处理器,与本地服务信息管理器和/或远程服务索引管理器连接,用于处理对本地服务注册器的服务信息查询请求。
10.根据权利要求1所述的服务注册器,其中所述查询处理器具有以下两种操作模式:
在第一种模式中,当接收到来自本地服务域的服务信息查询请求时,请求本地服务信息管理器和/或远程服务信息管理器来定位服务并将响应发送给服务请求者;
在第二种模式中,当接收到来自远程服务注册器的请求时,请求本地服务信息管理器并将本地服务信息返回给所述远程服务注册器。
11.根据权利要求10所述的服务注册器,其特征在于所述本地服务信息管理器进一步包括用于从本地服务的服务元数据中提取的服务索引的装置。
12.一种SOA体系结构,包括:
元服务网络,包括:一个或多个如权利要求1所述的服务注册器;
与元服务网络并行的服务网络,包括:
一个或多个端点;以及
一个或多个中介者,介于所述端点之间;
其中所述一个或多个端点可直接或通过所述一个或多个中介者与相应的服务注册器进行交互。
13.一种用于在服务注册器间共享服务信息的方法,所述服务注册器之间在物理和/或逻辑上相连,所述方法包括:
将服务提供者的服务元数据注册到所述服务提供者的本地服务注册器;
由所述本地服务注册器将所述服务元数据中的服务索引传播到远程服务注册器。
14.根据权利要求13所述的方法,还包括由所述本地服务注册器根据预定的连接策略将所述服务元数据中的服务索引传播到远程服务注册器。
15.根据权利要求13或14所述的方法,其中所述注册步骤通过至少下述方式之一来执行:
由服务提供者或第三方向本地服务注册器注册服务;
由本地服务注册器通过自动服务发现来发现和注册所述服务。
16.一种用于由服务请求者向服务注册器查询服务信息的方法,各服务注册器之间在物理和/或逻辑上相连,所述方法包括:
所述服务请求者向本地服务注册器发送查询服务信息的请求;
所述本地服务注册器根据远程服务的服务索引,将所述请求转发给相关的远程服务注册器,直到到达一个或多个目标远程服务注册器;
所述一个或多个目标远程服务注册器将请求的服务元数据作为响应发送回所述本地服务注册器;
所述本地服务注册器将所述响应发送给所述服务请求者。
17.根据权利要求15所述的方法,其中所述服务请求者向本地服务注册器发送查询服务信息的请求的步骤包括:所述服务请求者向本地服务注册器发送查询具有特定参数的所有服务的请求。
18.根据权利要求15所述的方法,其中所述一个或多个目标远程服务注册器沿请求被发送的路线将请求的服务元数据作为响应发送回所述服务注册器。
19.一种用于由服务请求者调用远程服务域中的服务的方法,所述方法包括:
由所述服务请求者将关于调用远程服务域中的服务的请求发送给中介者,并由中介者发送给本地服务注册器;
所述本地服务注册器通过查询服务索引,将该请求传送到远程服务域;
远程服务域的中介者将所述消息发送给与所述远程服务域相关联的服务注册器;
由与所述远程服务域相关联的服务注册器将所述服务经由远程服务域的中介者发送到所述服务提供者,以便提供给所述服务请求者。
20.根据权利要求19所述的方法,其中所述本地服务注册器通过查询服务索引将该请求传送到远程服务域的步骤还包括:
所述本地服务注册器通过查询服务索引获知请求应转发到的下一跳中介者地址,并把所述地址返回所述中介者,以便所述中介者将请求转发到下一跳中介者;
重复所述获知、返回和转发操作,直到所述消息到达远程服务域的中介者。
21.根据权利要求20所述的方法,其中所述本地服务注册器通过查询服务索引获知请求应转发到的下一跳中介者地址的步骤还包括:
由本地服务注册器的插件部分接收来自服务请求者的请求;
由插件部分中的注册器插件容器从基本连接策略库中查找连接策略,和调用相应的注册器插件;
由插件对所述服务调用请求执行相应的插件功能;
将执行了相应注册器插件功能并带有特定连接策略的调用请求发送到本地和远程服务信息管理器;
由本地和远程服务信息管理器查询服务索引,以获知下一跳中介者的地址。
22.根据权利要求21所述的方法,其中所述注册器插件包括由服务注册器实现的注册器插件以及通过与外部***进行交互实现的注册器插件,其中所述外部***包括至少下述之一:用于全局安全性策略的安全性***、用于商业使用服务的计费***、用于QoS的网络业务***、需要用于数据挖掘和决策制定的统计信息的业务智能***以及用于基于服务选择的商业合同的业务规则***。
23.一种计算机程序产品,包含在计算机***可读的一个或多个计算机可读介质上的多条指令,当所述指令在计算机上执行时,用于实现如前述任一方法权利要求所述的方法。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100710383A CN100558038C (zh) | 2006-03-31 | 2006-03-31 | 服务注册器以及相关***和方法 |
AT07727367T ATE527801T1 (de) | 2006-03-31 | 2007-03-27 | Dienstregistrierdatenbank und relevante systeme und verfahren |
US12/295,578 US8306979B2 (en) | 2006-03-31 | 2007-03-27 | Service query, selection, routing and propagation |
BRPI0709905A BRPI0709905B1 (pt) | 2006-03-31 | 2007-03-27 | registro de serviço e sistema e método relevante |
EP20070727367 EP2005709B1 (en) | 2006-03-31 | 2007-03-27 | Service registry and relevant system and method |
CA 2646529 CA2646529A1 (en) | 2006-03-31 | 2007-03-27 | Service registry and relevant system and method |
PCT/EP2007/052894 WO2007113164A1 (en) | 2006-03-31 | 2007-03-27 | Service registry and relevant system and method |
JP2009502065A JP4897872B2 (ja) | 2006-03-31 | 2007-03-27 | サービス・レジストリ、ならびに関連したシステムおよび方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100710383A CN100558038C (zh) | 2006-03-31 | 2006-03-31 | 服务注册器以及相关***和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101047512A true CN101047512A (zh) | 2007-10-03 |
CN100558038C CN100558038C (zh) | 2009-11-04 |
Family
ID=38199776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100710383A Active CN100558038C (zh) | 2006-03-31 | 2006-03-31 | 服务注册器以及相关***和方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US8306979B2 (zh) |
EP (1) | EP2005709B1 (zh) |
JP (1) | JP4897872B2 (zh) |
CN (1) | CN100558038C (zh) |
AT (1) | ATE527801T1 (zh) |
BR (1) | BRPI0709905B1 (zh) |
CA (1) | CA2646529A1 (zh) |
WO (1) | WO2007113164A1 (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101763428A (zh) * | 2010-01-04 | 2010-06-30 | 山东浪潮齐鲁软件产业股份有限公司 | 一种SOA对web服务的注册存储管理应用*** |
CN102255935A (zh) * | 2010-05-20 | 2011-11-23 | 中兴通讯股份有限公司 | 云服务消费方法、云服务消息包、云服务中介及云*** |
CN102385617A (zh) * | 2010-09-30 | 2012-03-21 | 微软公司 | 动态域查询及查询转换 |
CN101441561B (zh) * | 2007-11-23 | 2012-05-23 | 国际商业机器公司 | 基于上下文模型生成面向服务架构的策略的方法和装置 |
CN102546684A (zh) * | 2010-12-13 | 2012-07-04 | 财团法人资讯工业策进会 | 云端服务***及方法 |
CN101441560B (zh) * | 2007-11-23 | 2012-09-26 | 国际商业机器公司 | 执行基于上下文模型的面向服务架构的策略的方法和装置 |
CN102833343A (zh) * | 2012-09-03 | 2012-12-19 | 浙江财经学院 | 一种跨虚拟企业Web服务共享*** |
CN101686247B (zh) * | 2008-09-26 | 2013-01-09 | 华为技术有限公司 | 信息处理方法和*** |
CN103841183A (zh) * | 2014-03-25 | 2014-06-04 | 浪潮电子信息产业股份有限公司 | 一种面向数据中心的SMI-S Provider注册请求方法 |
CN104935484A (zh) * | 2015-05-28 | 2015-09-23 | 北京海尔广科数字技术有限公司 | 一种通过网关调用家电服务的方法及装置 |
CN106302596A (zh) * | 2015-06-03 | 2017-01-04 | 北京京东尚科信息技术有限公司 | 一种服务发现的方法和装置 |
CN108632299A (zh) * | 2017-03-15 | 2018-10-09 | 北京京东尚科信息技术有限公司 | 增强注册中心可用性的方法、装置、电子设备和存储介质 |
CN110247944A (zh) * | 2018-03-09 | 2019-09-17 | 阿里巴巴集团控股有限公司 | 跨区域的服务调用方法、装置、***及电子设备 |
CN110334906A (zh) * | 2019-05-30 | 2019-10-15 | 广东民航机场建设有限公司 | 业务数据处理方法、装置、计算机设备和存储介质 |
CN111045833A (zh) * | 2018-10-15 | 2020-04-21 | 北京京东尚科信息技术有限公司 | 接口调用的方法和装置 |
CN112153021A (zh) * | 2020-09-10 | 2020-12-29 | 中国联合网络通信集团有限公司 | 一种业务数据的获取方法及装置 |
CN113839865A (zh) * | 2021-11-30 | 2021-12-24 | 北京鲸鲮信息***技术有限公司 | 一种跨域调用服务的管理方法及*** |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8819080B2 (en) * | 2007-06-13 | 2014-08-26 | The Boeing Company | System and method for collection, retrieval, and distribution of data |
US9721216B2 (en) | 2007-11-26 | 2017-08-01 | International Business Machines Corporation | Solution that automatically recommends design assets when making architectural design decisions for information services |
CN101471939B (zh) * | 2007-12-28 | 2012-07-04 | 中国科学院声学研究所 | Soa架构的融合业务***中的多次用户认证鉴权方法 |
US8341155B2 (en) | 2008-02-20 | 2012-12-25 | International Business Machines Corporation | Asset advisory intelligence engine for managing reusable software assets |
JP5389902B2 (ja) | 2008-04-28 | 2014-01-15 | セールスフォース ドット コム インコーポレイティッド | ウェブサイト及びそのコンテンツの作成及び管理のためのオブジェクト指向のシステム |
US8631094B1 (en) * | 2008-08-08 | 2014-01-14 | Google Inc. | Distributed parallel determination of single and multiple source shortest paths in large directed graphs |
US8570905B2 (en) * | 2008-09-26 | 2013-10-29 | International Business Machines Corporation | Adaptive enterprise service bus (ESB) runtime system and method |
US8448185B2 (en) * | 2009-03-23 | 2013-05-21 | Siemens Aktiengesellschaft | Method and system for dynamic discovery of services in a communication framework |
MY164485A (en) * | 2009-07-20 | 2017-12-29 | Mimos Berhad | A method and system for an intelligent framework of a service orientated architecture |
US8607190B2 (en) | 2009-10-23 | 2013-12-10 | International Business Machines Corporation | Automation of software application engineering using machine learning and reasoning |
US8726236B2 (en) | 2009-10-26 | 2014-05-13 | International Business Machines Corporation | Determining context specific content |
US9704130B2 (en) | 2009-10-26 | 2017-07-11 | International Business Machines Corporation | Standard based mapping of industry vertical model to legacy environments |
US8645904B2 (en) | 2009-10-26 | 2014-02-04 | International Business Machines Corporation | Cross repository impact analysis using topic maps |
US8285672B2 (en) * | 2009-10-29 | 2012-10-09 | Oracle International Corporation | Declarative federation of registries |
US9026412B2 (en) | 2009-12-17 | 2015-05-05 | International Business Machines Corporation | Managing and maintaining scope in a service oriented architecture industry model repository |
US8566358B2 (en) | 2009-12-17 | 2013-10-22 | International Business Machines Corporation | Framework to populate and maintain a service oriented architecture industry model repository |
US8244768B2 (en) | 2009-12-17 | 2012-08-14 | International Business Machines Corporation | Implementing service oriented architecture industry model repository using semantic web technologies |
US8775462B2 (en) | 2009-12-17 | 2014-07-08 | International Business Machines Corporation | Service oriented architecture industry model repository meta-model component with a standard based index |
US9111004B2 (en) | 2009-12-17 | 2015-08-18 | International Business Machines Corporation | Temporal scope translation of meta-models using semantic web technologies |
US8631071B2 (en) | 2009-12-17 | 2014-01-14 | International Business Machines Corporation | Recognition of and support for multiple versions of an enterprise canonical message model |
US8880586B2 (en) * | 2010-04-08 | 2014-11-04 | Microsoft Corporation | Metadata subscription registry |
US9106604B2 (en) | 2010-07-01 | 2015-08-11 | Telefonaktiebolaget L M Ericsson (Publ) | Method and arrangement for service sharing |
US9483312B2 (en) * | 2010-08-16 | 2016-11-01 | International Business Machines Corporation | Locating service endpoints from a service registry |
US9223892B2 (en) | 2010-09-30 | 2015-12-29 | Salesforce.Com, Inc. | Device abstraction for page generation |
US8935360B2 (en) * | 2010-12-03 | 2015-01-13 | Salesforce.Com, Inc. | Techniques for metadata-driven dynamic content serving |
KR101389140B1 (ko) * | 2011-09-11 | 2014-04-28 | 한미아이티 주식회사 | 서비스 유알아이와 거점정보를 통한 메시지 중계 장치 및 그 방법 |
US8910186B2 (en) | 2011-11-15 | 2014-12-09 | International Business Machines Corporation | Feed-based promotion of service registry objects |
US8595251B2 (en) * | 2011-11-16 | 2013-11-26 | Verizon Patent And Licensing Inc. | Flexible interface module |
EP2629250A1 (en) * | 2012-02-14 | 2013-08-21 | Tata Consultancy Services Limited | A system and method for providing enterprise information technology lifecycle tools synchronization platform |
EP2860636A4 (en) * | 2012-06-07 | 2016-04-06 | Toshiba Kk | PROGRAM AND DEVICE FOR CONNECTING BUS |
US9519506B2 (en) * | 2012-06-29 | 2016-12-13 | Nokia Technologies Oy | Method and apparatus for enabling remote service task based access to functionality provided by one or more remote services |
GB2509723A (en) * | 2013-01-10 | 2014-07-16 | Ibm | Invoking web services that are determined at the time of execution |
US9858093B2 (en) * | 2013-03-08 | 2018-01-02 | Oracle International Corporation | Model for configuration independent process templates and business catalog |
US10341439B2 (en) | 2013-05-06 | 2019-07-02 | Convida Wireless, Llc | Semantics support and management in M2M systems |
US9596295B2 (en) | 2013-06-29 | 2017-03-14 | Google Inc. | Computing connected components in large graphs |
US9852230B2 (en) | 2013-06-29 | 2017-12-26 | Google Llc | Asynchronous message passing for large graph clustering |
GB2516833A (en) * | 2013-07-31 | 2015-02-11 | Ibm | Running software application with dynamic action delegation |
CN105683984A (zh) * | 2013-09-28 | 2016-06-15 | 迈克菲股份有限公司 | 数据交换层上高效的请求-响应路由 |
US8793359B1 (en) * | 2013-11-25 | 2014-07-29 | Software Ag | Systems and/or methods for intelligently detecting API key domains |
US9407546B2 (en) | 2014-02-24 | 2016-08-02 | Red Hat, Inc. | Routing a message using a routing table in a dynamic service mesh |
US9705995B2 (en) * | 2014-03-18 | 2017-07-11 | Axis Ab | Capability monitoring in a service oriented architecture |
US9984158B2 (en) * | 2014-03-18 | 2018-05-29 | Axis Ab | Finding services in a service-oriented architecture (SOA) network |
CN105450705B (zh) * | 2014-08-29 | 2018-11-27 | 阿里巴巴集团控股有限公司 | 业务数据处理方法及设备 |
US10673852B2 (en) * | 2014-12-23 | 2020-06-02 | Mcafee, Llc | Self-organizing trusted networks |
CN104935485A (zh) * | 2015-05-28 | 2015-09-23 | 北京海尔广科数字技术有限公司 | 家电服务调用方法、家电服务调用请求转发方法及装置 |
EP3440545A1 (en) | 2016-04-05 | 2019-02-13 | Telefonaktiebolaget LM Ericsson (PUBL) | Method and agent for sharing information about cloudlet properties in distributed cloud environments |
US11467868B1 (en) * | 2017-05-03 | 2022-10-11 | Amazon Technologies, Inc. | Service relationship orchestration service |
US10742750B2 (en) * | 2017-07-20 | 2020-08-11 | Cisco Technology, Inc. | Managing a distributed network of function execution environments |
EP3655857A1 (en) * | 2017-07-20 | 2020-05-27 | Cisco Technology, Inc. | Managing a distributed network of function execution environments |
CN107580045A (zh) * | 2017-08-31 | 2018-01-12 | 新华三大数据技术有限公司 | 服务的编目方法及装置 |
US11816496B2 (en) | 2017-08-31 | 2023-11-14 | Micro Focus Llc | Managing containers using attribute/value pairs |
US10469600B2 (en) * | 2017-11-14 | 2019-11-05 | Dell Products, L.P. | Local Proxy for service discovery |
EP3712768B1 (en) | 2019-03-18 | 2024-05-01 | Sony Group Corporation | Management of services in an edge computing system |
US10715484B1 (en) | 2019-12-11 | 2020-07-14 | CallFire, Inc. | Domain management and synchronization system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4271827B2 (ja) * | 2000-05-09 | 2009-06-03 | 富士通株式会社 | 情報提供システムおよび仲介装置 |
US6922685B2 (en) * | 2000-05-22 | 2005-07-26 | Mci, Inc. | Method and system for managing partitioned data resources |
US6895444B1 (en) * | 2000-09-15 | 2005-05-17 | Motorola, Inc. | Service framework with local proxy for representing remote services |
US20030191802A1 (en) * | 2002-04-03 | 2003-10-09 | Koninklijke Philips Electronics N.V. | Reshaped UDDI for intranet use |
US7194482B2 (en) * | 2002-09-26 | 2007-03-20 | International Business Machines Corporation | Web services data aggregation system and method |
JP2004227140A (ja) * | 2003-01-21 | 2004-08-12 | Toshiba Corp | 検索連携プログラム及び検索システム並びに検索方法 |
JP4254264B2 (ja) * | 2003-02-17 | 2009-04-15 | 日本電信電話株式会社 | Webサービス利用時におけるネットワーク提供方法、システム及びサーバ |
JP4334253B2 (ja) * | 2003-03-14 | 2009-09-30 | 株式会社東芝 | データ整合プログラム及びシステム並びに方法 |
US20050216600A1 (en) * | 2004-03-23 | 2005-09-29 | Jonathan Maron | System and method for providing a service in a controlled run-time environment |
-
2006
- 2006-03-31 CN CNB2006100710383A patent/CN100558038C/zh active Active
-
2007
- 2007-03-27 CA CA 2646529 patent/CA2646529A1/en not_active Abandoned
- 2007-03-27 WO PCT/EP2007/052894 patent/WO2007113164A1/en active Application Filing
- 2007-03-27 BR BRPI0709905A patent/BRPI0709905B1/pt active IP Right Grant
- 2007-03-27 US US12/295,578 patent/US8306979B2/en active Active
- 2007-03-27 AT AT07727367T patent/ATE527801T1/de not_active IP Right Cessation
- 2007-03-27 EP EP20070727367 patent/EP2005709B1/en active Active
- 2007-03-27 JP JP2009502065A patent/JP4897872B2/ja active Active
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441561B (zh) * | 2007-11-23 | 2012-05-23 | 国际商业机器公司 | 基于上下文模型生成面向服务架构的策略的方法和装置 |
CN101441560B (zh) * | 2007-11-23 | 2012-09-26 | 国际商业机器公司 | 执行基于上下文模型的面向服务架构的策略的方法和装置 |
CN101686247B (zh) * | 2008-09-26 | 2013-01-09 | 华为技术有限公司 | 信息处理方法和*** |
CN101763428A (zh) * | 2010-01-04 | 2010-06-30 | 山东浪潮齐鲁软件产业股份有限公司 | 一种SOA对web服务的注册存储管理应用*** |
CN102255935A (zh) * | 2010-05-20 | 2011-11-23 | 中兴通讯股份有限公司 | 云服务消费方法、云服务消息包、云服务中介及云*** |
CN102255935B (zh) * | 2010-05-20 | 2016-06-15 | 中兴通讯股份有限公司 | 云服务消费方法、云服务中介及云*** |
US9262474B2 (en) | 2010-09-30 | 2016-02-16 | Microsoft Technology Licensing, Llc | Dynamic domain query and query translation |
CN102385617A (zh) * | 2010-09-30 | 2012-03-21 | 微软公司 | 动态域查询及查询转换 |
CN102546684A (zh) * | 2010-12-13 | 2012-07-04 | 财团法人资讯工业策进会 | 云端服务***及方法 |
CN102833343A (zh) * | 2012-09-03 | 2012-12-19 | 浙江财经学院 | 一种跨虚拟企业Web服务共享*** |
CN103841183A (zh) * | 2014-03-25 | 2014-06-04 | 浪潮电子信息产业股份有限公司 | 一种面向数据中心的SMI-S Provider注册请求方法 |
CN104935484A (zh) * | 2015-05-28 | 2015-09-23 | 北京海尔广科数字技术有限公司 | 一种通过网关调用家电服务的方法及装置 |
CN106302596B (zh) * | 2015-06-03 | 2019-09-20 | 北京京东尚科信息技术有限公司 | 一种服务发现的方法和装置 |
CN106302596A (zh) * | 2015-06-03 | 2017-01-04 | 北京京东尚科信息技术有限公司 | 一种服务发现的方法和装置 |
CN108632299A (zh) * | 2017-03-15 | 2018-10-09 | 北京京东尚科信息技术有限公司 | 增强注册中心可用性的方法、装置、电子设备和存储介质 |
CN110247944A (zh) * | 2018-03-09 | 2019-09-17 | 阿里巴巴集团控股有限公司 | 跨区域的服务调用方法、装置、***及电子设备 |
CN111045833A (zh) * | 2018-10-15 | 2020-04-21 | 北京京东尚科信息技术有限公司 | 接口调用的方法和装置 |
CN111045833B (zh) * | 2018-10-15 | 2024-06-18 | 北京京东尚科信息技术有限公司 | 接口调用的方法和装置 |
CN110334906A (zh) * | 2019-05-30 | 2019-10-15 | 广东民航机场建设有限公司 | 业务数据处理方法、装置、计算机设备和存储介质 |
CN112153021A (zh) * | 2020-09-10 | 2020-12-29 | 中国联合网络通信集团有限公司 | 一种业务数据的获取方法及装置 |
CN113839865A (zh) * | 2021-11-30 | 2021-12-24 | 北京鲸鲮信息***技术有限公司 | 一种跨域调用服务的管理方法及*** |
CN113839865B (zh) * | 2021-11-30 | 2022-03-01 | 北京鲸鲮信息***技术有限公司 | 一种跨域调用服务的管理方法及*** |
Also Published As
Publication number | Publication date |
---|---|
US8306979B2 (en) | 2012-11-06 |
ATE527801T1 (de) | 2011-10-15 |
EP2005709A1 (en) | 2008-12-24 |
JP2009531760A (ja) | 2009-09-03 |
US20100017368A1 (en) | 2010-01-21 |
BRPI0709905B1 (pt) | 2020-01-28 |
WO2007113164A1 (en) | 2007-10-11 |
JP4897872B2 (ja) | 2012-03-14 |
CA2646529A1 (en) | 2007-10-11 |
EP2005709B1 (en) | 2011-10-05 |
BRPI0709905A2 (pt) | 2013-12-31 |
CN100558038C (zh) | 2009-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101047512A (zh) | 服务注册器以及相关***和方法 | |
KR100991894B1 (ko) | 온-디맨드 비지니스 협업을 위한 정보 하이퍼체인 관리방법 및 장치 | |
US8335862B2 (en) | Programmatic management of software resources in a content framework environment | |
US7299244B2 (en) | System and method for dynamic sequencing of a requirements-based workflow | |
US7650347B2 (en) | System and method for job scheduling and distributing job scheduling | |
US9742614B2 (en) | Data-type definition driven dynamic business component instantiation and execution framework | |
US7937500B2 (en) | Dynamic, real-time integration of software resources through services of a content framework | |
US6985939B2 (en) | Building distributed software services as aggregations of other services | |
KR100545443B1 (ko) | 브릿지, 결합 방법, 결합 시스템 및 컴퓨터 판독가능한 기록 매체 | |
US8402049B2 (en) | Metadata cache management | |
US8639792B2 (en) | Job processing system, method and program | |
EP1753195A1 (en) | Server computer, client device and web service implemented data processing method | |
CN103401897A (zh) | 一种分布式服务注册中心构建方法 | |
CN101044462A (zh) | 多层计算环境中用于性能管理的***和方法 | |
US7934218B2 (en) | Interprocess communication management using a socket layer | |
US20050283455A1 (en) | Processing of data sets in a computer network | |
Hahn et al. | Modeling data transformations in data-aware service choreographies | |
JP2003132039A (ja) | シナリオ分割方式 | |
van Gurp et al. | Service grid variability realization | |
Fedosseev | Composition of web services and QoS aspects | |
Liu et al. | Towards service discovery and subscription based on community-of-interest | |
CN101483674A (zh) | 数据跨域查找方法 | |
Collins et al. | Grid Data Services-Relational Database Management Systems | |
CN117834729A (zh) | 一种地理信息服务聚合与服务链构建方法及*** | |
CN104519094A (zh) | 构建于云计算平台的电子代码中间件*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |