在面向服务的架构(soa)网络中发现服务的方法及系统的制作方法_6

文档序号:9219812阅读:来源:国知局
列表)(框818)。服务注册表440-S可将从服务注册表440-Q接收的结果(例如,第二服务列表)与其自身的结果(例如,来自框806的第一列表中的三个)组合并将结果返回到客户端(框810)。在当前实例中,服务注册表440-S将七个结果发送到客户端。
[0119]如所展示,客户端在原始查询中请求了六个结果,但接收到七个。额外结果的出现可因为服务注册表440并行地进行搜索。尽管这指示比所请求搜索更多的搜索(及比可能所需计算功率更多的计算功率),但额外结果是以下可能益处的小的计算成本:其中节点不必具有完全数据库的副本的分布式数据库。
[0120]在一个实施例中,当服务注册表从相邻者接收到结果(框818)时,其可将这些结果存储在其服务注册表高速缓冲存储器446中。存储在高速缓冲存储器446中的信息可具有存续时间(TTL)且可在一时间周期之后被删除。在另一实施例中,服务注册表不从相邻服务注册表接收结果(框818)。而是,相邻服务注册表将结果直接发送到做出请求的客户端。此后一实施例的优点是,服务注册表不必存储任何正在进行的搜索及服务注册表是否已从相邻者接收到响应的状态。另一方面,此后一实施例将限制高速缓冲存储器446的大小,这可在长期运行中减慢搜索。
[0121]覆盖网络的拓扑的另一实例是其中每一节点直接连接到覆盖网络中的一或多个其它节点的网状网络。网状网络中的每一节点可根据覆盖网络拓扑中的连接(例如,预定义分布型式)将业务转发到与其连接的节点。可将树状拓扑视为许多网状拓扑中的一者。作为另一实例,一个网状拓扑可连接每一节点与每个其它节点。在此情况中,网络中的每一节点可接收搜索查询,且从客户端420接收到搜索查询的服务注册表440可在从所有节点接收到搜索结果之后对搜索结果进行排名。
[0122]与上文所论述的树状拓扑一样,不同网状网络拓扑(或网络拓扑群组)可与不同的正被搜索的特定服务(或不同特性群组)相关联。此外,可基于除正被搜索的特定服务的特性之外的一(或若干)特性而建立网状拓扑中的每一连接。举例来说,每一节点可连接到四个地理上最靠近的节点。作为另一实例,可手动地配置覆盖网络的拓扑(无论是网状拓扑还是树状拓扑)。在一个实施例中,举例来说,可基于服务距做出请求的客户端420的跳跃的数目而对搜索结果进行排名。
[0123]在网状网络的情况中,可返回多于所请求数目的搜索结果(且因此花费额外的计算资源)(即,可能的技术问题)。尽管如此,网状网络仍可允许以有效方式对分布式数据库的并行搜索(例如,不同技术问题的可能解决方案)。此外,在网状拓扑中的搜索可比在树状拓扑中的搜索更快且并行度更大(例如,技术问题的可能解决方案)。然而,在网状拓扑中的搜索可导致比树状拓扑更多的网络业务及更多的额外搜索结果(例如,针对网状拓扑的可能技术问题,且由树状拓扑提供的可能解决方案)。
[0124]在前述说明书中,已参考附图描述了各种优选实施例。然而,将显而易见,可对本发明做出各种修改及改变且可实施额外实施例,此并不背离如所附权利要求书中所陈述的本发明的较宽广范围。因此,应将本说明书及图式视为具有说明性意义而非限制性意义。
[0125]举例来说,在一个实施例中,客户端可将搜索查询发送到除本地服务主机或服务注册表之外的服务主机及服务注册表(例如,框802)。在此实施例中,客户端可将搜索查询发送到SOA网络中的任何节点或SOA网络中的特定(例如,靠近)节点。作为另一实例,在一个实施例中,节点管理器510可基于特定服务的特性(例如,除不同于特定服务的特性的特性以外)而确定网络的拓扑。
[0126]举例来说,尽管已关于图7A、7B及8描述了若干系列的框且已描述了信号流的次序,但在其它实施方案中可修改所述框及/或信号流的次序。此外,可并行地执行非相依框及/或信号流。
[0127]将明了,在图中所图解说明的实施方案中,可以许多不同形式的软件、固件及硬件来实施如上文所描述的系统及/或方法。用于实施这些系统及方法的实际软件代码或专门化控制硬件并不限于所述实施例。因此,在不参考特定软件代码的情况下来描述所述系统及方法的操作及行为一应理解,软件及控制硬件可经设计以基于本文中的描述而实施所述系统及方法。
[0128]此外,可将上文所描述的某些部分描述为执行一或多个功能的组件。如本文中所使用,组件可包含硬件(例如处理器、ASIC或FPGA)或硬件与软件的组合(例如,执行软件的处理器)。如本文中所使用的词语“示范性”意指“作为图解实例”。
[0129]应强调,当在本说明书中使用时术语“包括(comprise/comprising) ”应理解为规定所陈述特征、整数、步骤或组件的存在,但并不排除一或多个其它特征、整数、步骤、组件或其群组的存在或添加。
[0130]本申请案中所使用的元件、动作及指令不应理解为对所述实施例至关重要或必不可少,除非明确如此描述。而且,如本文中所使用,冠词“一”打算包含一或多个项目。此外,短语“基于”打算意指“至少部分地基于”,除非另有明确陈述。
【主权项】
1.一种方法,其包括: (a)在本地服务注册表中从客户端接收对特定服务的搜索查询, 其中所述本地服务注册表包含列举在所述本地服务注册表中注册的服务的本地数据库,且 其中所述本地服务注册表处于服务注册表网络中; (b)查询所述本地数据库以确定满足所述搜索查询的第一服务列表; (C)基于除所述特定服务的特性之外的特性而在所述服务注册表网络中确定相邻服务注册表,其中所述相邻服务注册表与所述本地服务注册表相邻; (d)将所述搜索查询发送到所述相邻服务注册表,其中所述相邻服务注册表包含列举在所述相邻服务注册表中注册的服务的相邻数据库; (e)从所述相邻服务注册表接收在所述相邻服务注册表中注册的满足所述搜索查询的第二服务列表?’及 (f)将满足所述搜索查询的所述第一服务列表及所述第二服务列表返回到所述客户端。2.根据权利要求1所述的方法, 其中所述特定服务的所述特性为特定特性, 其中所述搜索查询识别所述特定服务及所述特定服务的所述特定特性, 其中确定所述相邻服务注册表包含基于除所述特定特性之外的特性而确定所述相邻服务注册表,且 其中确定所述相邻服务注册表包含 从多个相邻服务注册表确定所述相邻服务注册表,其中所述服务注册表网络中的所述服务注册表中的一些服务注册表为非相邻服务注册表。3.根据权利要求2所述的方法,其中确定所述相邻服务注册表包含: 基于多个特性而确定所述相邻服务注册表,其中所述多个特性并非所述特定服务的特性,且其中所述多个特性中的每一者均被加权。4.根据权利要求1所述的方法, 其中所述搜索查询将所述特定服务指示为数据存储,且 其中除所述服务的所述特性之外的所述特性包含带宽、地理位置、开放信道、等待时间、多播能力、跳跃数目、成本或网络类型。5.根据权利要求2所述的方法,其中所述服务注册表网络为树状服务注册表网络。6.根据权利要求1所述的方法,其进一步包括: (g)在所述相邻服务注册表中接收所述搜索查询; (h)查询所述相邻服务注册表以确定满足所述搜索查询的所述第二服务列表;及 (i)将所述第二列表发送到所述本地服务注册表。7.根据权利要求6所述的方法,其中所述相邻服务注册表为做出请求的服务注册表,所述方法进一步包括: U)确定所述第二服务列表是否为充足的,且当所述第二服务列表不充足时: 基于除所述特定服务的所述特性之外的所述特性而在所述服务注册表网络中确定另一相邻服务注册表,其中所述另一相邻服务注册表与所述做出请求的服务注册表相邻, 将所述搜索查询发送到所述另一相邻服务注册表,其中所述另一相邻服务注册表包含列举在所述另一相邻服务注册表中注册的服务的另一相邻数据库,及 从所述另一相邻服务注册表接收在所述另一相邻服务注册表中注册的满足所述搜索查询的另一服务列表,其中所述第二列表包含所述另一列表;及(k)在连续的其它节点中重复要素(j)。8.一种包括装置的系统,其中所述装置包含: 存储器,其用以存储列举在本地服务注册表中注册的服务的本地数据库,其中所述本地服务注册表处于服务注册表网络中; 处理器,其用以 从客户端接收对特定服务的搜索查询, 查询所述本地数据库以确定满足所述搜索查询的第一服务列表,及 基于除所述特定服务的特性之外的特性而在所述服务注册表网络中确定相邻 服务注册表,其中所述相邻服务注册表与所述本地服务注册表相邻; 发射器,其用以将所述搜索查询发送到所述相邻服务注册表,其中所述相邻服务注册表包含列举在所述相邻服务注册表中注册的服务的相邻数据库;及 接收器,其用以从所述相邻服务注册表接收在所述相邻服务注册表中注册的满足所述搜索查询的第二服务列表, 其中所述处理器经配置以将满足所述搜索查询的所述第一服务列表及所述第二服务列表返回到所述客户端。9.根据权利要求8所述的系统, 其中所述特定服务的所述特性为特定特性, 其中所述搜索查询识别所述特定服务及所述特定服务的所述特定特性,且 其中所述处理器经配置以基于除所述特定特性之外的特性而确定所述相邻服务注册表。10.根据权利要求9所述的系统,其中所述处理器经配置以基于多个特性而确定所述相邻服务注册表,其中所述多个特性并非所述特定服务的特性,且其中所述处理器经配置以对所述多个特性中的每一者进行加权。11.根据权利要求8所述的系统, 其中所述搜索查询将所述特定服务指示为数据存储,且 其中除所述服务的所述特性之外的所述特性包含带宽、地理位置、开放信道、等待时间、多播能力、跳跃数目、成本或网络类型。12.根据权利要求9所述的系统,其中所述服务注册表网络为树状服务注册表网络,或其中所述服务注册表网络为网状服务注册表网络。13.根据权利要求8所述的系统,其进一步包括另一装置,其中所述另一装置包含: 存储器,其用以存储所述相邻数据库; 接收器,其用以接收所述搜索查询; 处理器,其经配置以查询所述相邻数据库以确定满足所述搜索查询的所述第二服务列表;及 发射器,其用以将所述第二列表发送到所述本地服务注册表。14.根据权利要求13所述的系统, 其中所述相邻服务注册表为做出请求的服务注册表; 其中所述另一装置中的所述处理器经配置以确定所述第二服务列表是否为充足的,且当所述第二服务列表不充足时: 基于除所述特定服务的所述特性之外的所述特性而在所述服务注册表网络中确定另一相邻服务注册表,其中所述另一相邻服务注册表与所述做出请求的服务注册表相邻; 其中所述处理器经配置以将所述搜索查询发送到所述另一相邻服务注册表,其中所述另一相邻服务注册表包含列举在所述另一相邻服务注册表中注册的服务的另一相邻数据库;且 其中所述接收器经配置以从所述另一相邻服务注册表接收在所述另一相邻服务注册表中注册的满足所述搜索查询的另一服务列表,其中所述第二列表包含所述另一列表。15.根据权利要求14所述的系统,其进一步包括: 额外装置,其包含配置为所述另一装置以连续地搜索满足所述查询的服务的存储器、接收器、处理器及发射器。
【专利摘要】本申请涉及一种在面向服务的架构(SOA)网络中发现服务的方法及系统。一种用于在面向服务的架构网络中发现服务的方法及系统可包含在本地服务注册表中从客户端接收对特定服务的搜索查询。所述本地服务注册表可包含列举在所述本地服务注册表中注册的服务的本地数据库。所述本地服务注册表可处于服务注册表网络中。所述网络可包含查询所述本地数据库以确定满足所述搜索查询的第一服务列表及基于除正被搜索的所述特定服务的特性之外的特性而在所述服务注册表网络中确定相邻服务注册表。所述方法可包含将所述搜索查询发送到所述相邻服务注册表及从所述相邻服务注册表接收在所述相邻服务注册表中注册的满足所述搜索查询的第二服务列表。所述方法可包含将满足所述搜索查询的所述第一服务列表及所述第二服务列表返回到所述客户端。
【IPC分类】H04L29/08, G06F17/30
【公开号】CN104935625
【申请号】CN201510088903
【发明人】比约恩·埃德隆德, 乔基姆·施塔尔, 约阿基姆·鲁贝特, 米卡埃尔·兰布罗, 斯塔凡·奥尔松, 特德·哈策尔
【申请人】安讯士有限公司
【公开日】2015年9月23日
【申请日】2015年2月26日
【公告号】EP2922274A1, US20150269257
当前第6页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1