CN100561986C - Soa架构下多级服务总线的服务调用的动态路由方法 - Google Patents

Soa架构下多级服务总线的服务调用的动态路由方法 Download PDF

Info

Publication number
CN100561986C
CN100561986C CNB200710191521XA CN200710191521A CN100561986C CN 100561986 C CN100561986 C CN 100561986C CN B200710191521X A CNB200710191521X A CN B200710191521XA CN 200710191521 A CN200710191521 A CN 200710191521A CN 100561986 C CN100561986 C CN 100561986C
Authority
CN
China
Prior art keywords
service
bus
shortest path
code
call
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.)
Expired - Fee Related
Application number
CNB200710191521XA
Other languages
English (en)
Other versions
CN101179505A (zh
Inventor
张德进
赵俊峰
丁一新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Jiangsu Electric Power Co Ltd
Information and Telecommunication Branch of State Grid Jiangsu Electric Power Co Ltd
Original Assignee
State Grid Jiangsu Electric Power Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by State Grid Jiangsu Electric Power Co Ltd filed Critical State Grid Jiangsu Electric Power Co Ltd
Priority to CNB200710191521XA priority Critical patent/CN100561986C/zh
Publication of CN101179505A publication Critical patent/CN101179505A/zh
Application granted granted Critical
Publication of CN100561986C publication Critical patent/CN100561986C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Exchange Systems With Centralized Control (AREA)

Abstract

本发明公开了一种在SOA架构下分布式多级服务总线的服务调用的动态路由方法,该方法使用服务目录而不是服务总线来存放服务总线的联通性信息,服务目录提供路由的最短路径计算功能,服务调用者调用服务总线时,只需提供服务代码,服务总线查询服务目录获得路由的最短路径,再根据最短路径进行路由。本发明能够使服务调用者和服务真正的松耦合,避免服务调用者和服务的紧耦合,使用服务目录而不是服务总线来存放服务总线的联通性信息。本发明具有良好的兼容性;能够为企业提供一个全局统一的服务总线联通的网状视图,便于管理。

Description

SOA架构下多级服务总线的服务调用的动态路由方法
技术领域
本发明涉及一种SOA架构下服务之间信息共享和协作,具体地说是一种SOA架构下分布式多级服务总线的服务调用的动态路由方法。
背景技术
服务是处理和管理数据的单元,分布在企业的各个系统中。它通过消息与其它系统或其它服务通信。消息的交换通过标准的数据交换协议进行。每个服务都有一个唯一的服务代码来标识此服务,每个服务都有一个唯一的服务地址,通常是一个URL,来指明服务所在的位置。
服务目录用于服务信息的统一管理,包括服务信息的注册、修改、删除等等,所有的服务信息都必须在服务目录中注册。服务目录中存储了服务相关的信息,包括服务的代码、描述、参数、QoS信息、服务地址等等。
服务总线提供对服务的调用,所有服务的调用者必须通过服务总线来调用服务,避免服务的调用者直接调用服务,实现调用者和服务之间的松耦合。每个服务总线都有一个唯一的总线代码。
动态路由是指服务调用者不需要知道服务的地址,他在调用服务总线时,提供服务代码,服务总线根据服务代码查询服务目录,动态得到服务地址的过程。动态路由避免了服务调用者和服务的紧耦合。
SOA即面向服务的架构可以使应用开发流水线化,SOA的核心架构问题是控制、质量和管理。
在SOA架构下,服务分布在企业的各个系统中,服务目录用于服务的统一管理,一般一个企业中只部署一个服务目录,而服务总线可以部署多个。
服务总线可以多级部署,比如省中心的系统部署一个服务总线,省中心管辖的每个地市的系统也部署一个服务总线,每个地市管辖的二级地市系统也部署一个服务总线;服务总线也可按照应用系统部署,比如财务系统部署一个服务总线,营销系统部署一个服务总线;服务总线也可根据性能要求来部署,比如为性能要求高的服务单独部署一个服务总线,其它服务使用另外一个服务总线。这样,在整个企业中,所有的服务总线形成了一个分布式、多级的架构。
服务可以绑定在某个特定的服务总线上,如果一个服务绑定在某个服务总线上,这就意味着只有这个特定的服务总线才能访问此服务,别的服务总线都不能访问此服务。比如涉及到金额、机密、敏感数据等安全级别高的服务或者不想让外部系统直接访问的服务可以绑定在特定的服务总线上,使得服务的调用者必须调用指定的服务总线,防止安全隐患。
多个服务总线之间有联通性设置,所谓联通性设置是指,如果两个服务总线是联通的,那么它们可以调用绑定在对方上服务,如果两个服务总线不是联通的,那么它们无法调用绑定在对方上的服务。联通性设置信息保存在服务总线上。
服务总线的联通性使得多个总线之间形成了一个网状的连接结构。
SOA的目标之一是实现服务的动态路由,使得服务和服务调用者之间的松耦合,对于只有单一服务总线的SOA架构来说,不存在服务总线联通性和服务绑定的问题,很容易实现服务和服务调用者之间的松耦合,但是对于分布式多级总线的SOA架构,动态路由存在以下问题:
1.服务调用者必须知道服务是否绑定了特定的服务总线,如果服务绑定在特定的总线上,调用者必须调用此特定总线才能访问到此服务。如果调用者无法直接访问此特定总线,则会产生下面第3点所描述的情况。
2.如果服务原来绑定在服务总线A上,后来改为绑定在服务总线B上,那么服务的调用者也要从调用服务总线A改成调用服务总线B,这样就造成服务调用者和服务的紧耦合。
3.在服务调用者无法直接访问服务所绑定的服务总线时,比如服务调用者与服务处在不同的VPN中或者服务调用者没有权限直接访问服务所绑定的服务总线,就需要知道多个服务总线联通关系。假定服务调用者由于网络条件的限制,只能访问服务总线A,则想要调用的服务及服务所绑定的服务总线N处在另一个VPN中,不能直接访问。由于服务总线的联通性使得多个总线之间形成了一个网状的连接结构,服务调用者必须计算从服务总线A连接到服务总线N的路由的最短路径,才能让服务总线A按照最短路径传递消息,调用绑定在服务总线N上的服务。一旦服务总线联通性发生更改,服务调用者就需要重新计算最短路径,造成服务调用者和服务总线联通性紧耦合。
4.服务总线的联通性信息存放在服务总线上,使得企业没有一个直观的总线联通图,不能一目了然,管理不方便。
发明内容
为了克服以上提及的问题而造成的服务和服务调用者的紧耦合,使得SOA失去了应有的意义,本发明的目的是提供一种新的在SOA架构下分布式多级服务总线的服务调用的动态路由方法,这种方法用服务目录而不是服务总线来存放服务总线的联通性信息,服务目录提供路由的最短路径计算,服务调用者调用服务总线时,只需提供服务代码,服务总线查询服务目录获得路由的最短路径,再根据最短路径进行路由。这种方法能够使服务调用者和服务真正的松耦合。
本发明的目的是通过以下技术方案来实现的:
一种SOA架构下分布式多级服务总线的服务调用的动态路由方法,其特征在于它包括以下步骤:
(1)服务调用者调用指定的服务总线,并输入服务代码;
(2)指定的服务总线接收到服务请求后,输入两个参数:总线代码和服务代码7,调用服务目录的最短路径计算功能;
(3)服务目录根据服务代码查询出该服务代码所绑定的服务总线的位置,然后根据总线的联通性信息,计算出指定的服务总线到所绑定服务总线的最短路径,并把最短路径返回给指定的服务总线;
(4)指定的服务总线接收到最短路径后,发现请求数据中有最短路径,则判断自己是不是此最短路径的最后一个总线,如果是,则说明所调用的服务代码绑定在自己所在的服务总线上,该服务总线把服务调用者的请求数据发送给服务调用者所在的服务代码处;如果不是,再判断最短路径中的下个总线代码,指定的服务总线在服务调用者的请求数据中加入最短路径,把最短路径和服务调用者的请求数据一起发送到最短路径中的下个服务总线,回到步骤(4),进行循环操作。
本发明中:
1.服务目录除了存放服务信息之外,还需存放服务总线的信息,服务总线的信息包括服务总线的地址,服务总线代码,服务总线的联通性信息等等。服务目录中还需存放服务和服务总线的绑定信息。服务目录提供对服务总线信息、服务和服务总线绑定信息的管理功能。
2.服务目录上提供根据总线代码和服务代码计算路由的最短路径的功能。
3.服务调用者调用服务总线时,只需提供服务代码,服务总线查询服务目录获得路由的最短路径。
4.服务总线根据最短路径进行路由。
本发明在SOA架构下,部署分布式多级服务总线时,为了避免服务调用者和服务的紧耦合,使用服务目录而不是服务总线来存放服务总线的联通性信息,服务目录提供路由的最短路径计算功能,服务调用者调用服务总线时,只需提供服务代码,服务总线根据服务代码和本总线的代码来调用服务目录的最短路径计算功能,获得路由的最短路径,再根据最短路径进行路由。
本发明实现了服务调用者和服务的松耦合;而且用服务目录存放服务总线的信息和服务绑定服务总线的信息,对整个SOA架构的调整很小,因此具有良好的兼容性;采用本发明所述的方法,能够减少服务调用者的开发量,不需要对服务做任何改动;服务目录存放服务总线的信息和服务绑定服务总线的信息,能够为企业提供一个全局统一的服务总线联通的网状视图,一目了然,便于管理。
附图说明
图1是本发明中总线联通性和服务绑定总线的示意图。
图2是本发明所述方法的流程示意图。
具体实施方式
下面结合附图和实施方式对本发明作详细说明。
图1是本发明中总线联通性和服务绑定总线的示意图。其中,服务总线A、B、C相互联通,总线C和总线D、E联通。如果有调用者想要通过服务总线B调用服务7,则路由的最短路径为总线B->总线C->总线E->服务7。
本发明的具体实现方法如下:
在图2中,假定总线联通性和服务绑定总线如图1所示,有一个服务调用者想要通过服务总线B调用服务7,过程如下
1.服务调用者调用服务总线B,输入服务代码:7。
2.服务总线B接收到服务请求后,调用服务目录的最短路径计算功能,输入两个参数:总线代码B和服务代码7。
3.因为总线的联通性信息和服务绑定总线的信息现在都保存在服务目录上,服务目录可以根据服务代码7查询出服务7绑定在服务总线E上,然后根据总线的联通性信息,计算出服务总线B到服务总线E的最短路径为总线B->总线C->总线E,它把最短路径B.C.E返回给服务总线B。最短路径中的B、C、E是总线B、总线C、总线E的总线代码,用.分隔。
4.服务总线B接收到最短路径B.C.E后,判断自己不是此最短路径的最后一个总线,再判断最短路径中的下个总线是总线C,服务总线B在服务调用者的请求数据中加入最短路径B.C.E,把最短路径和服务调用者的请求数据一起发送的服务总线C。
5.服务总线C接收到请求后,发现请求数据中有最短路径B.C.E,它判断自己不是此最短路径的最后一个总线,再判断最短路径中的下个总线是总线E,服务总线E把最短路径和服务调用者的请求数据一起发送的服务总线E。
6.服务总线E接收到请求后,发现请求数据中有最短路径B.C.E,它判断自己是此最短路径的最后一个总线,说明所调用的服务7绑定在自己即服务总线E上,服务总线E把服务调用者的请求数据发送给服务7。
由此可见,在此过程中,服务调用者只需知道服务代码,而无需关心服务是否绑定在特定的服务总线上,也不需要知道服务总线的联通性。采用这种方法,使得在SOA架构下,分布式多级总线服务调用的动态路由真正做到了服务调用者和服务的松耦合。
由于目前大多数的SOA架构都是把服务总线的联通性信息保存在服务总线上,由服务调用者自己计算路由的最短路径,从而造成服务调用者和服务的紧耦合,本发明通过由服务目录计算路由的最短路径,使得服务调用者只需知道服务代码,而无需关心服务是否绑定在特定的服务总线上,也不需要知道服务总线的联通性,真正做到了服务调用者和服务的松耦合,可以适用于所有部署分布式多级服务总线的SOA架构,具有很高的现实意义。
用服务目录存放服务总线的信息和服务绑定服务总线的信息,对整个SOA架构的调整很小,因此具有良好的兼容性。
采用本发明,能够减少服务调用者的开发量,不需要对服务做任何改动。
服务目录存放服务总线的信息和服务绑定服务总线的信息,能够为企业提供一个全局统一的服务总线联通的网状视图,一目了然,便于管理。

Claims (1)

1、一种SOA架构下分布式多级服务总线的服务调用的动态路由方法,其特征在于它包括以下步骤:
(1)服务调用者调用指定的服务总线,并输入服务代码;
(2)指定的服务总线接收到服务请求后,根据接收到的两个参数:总线代码和服务代码,调用服务目录的最短路径计算功能;
(3)服务目录根据服务代码查询出该服务代码所绑定的服务总线的位置,然后根据总线的联通性信息,计算出指定的服务总线到所绑定服务总线的最短路径,并把最短路径返回给指定的服务总线;服务目录是存放服务信息、服务总线的信息以及服务和服务总线之间的绑定信息,其中,服务总线的信息包括服务总线的地址、服务总线代码、服务总线的联通性信息;服务目录对服务总线信息、服务和服务总线绑定信息进行管理;
(4)指定的服务总线接收到最短路径后,发现请求数据中有最短路径,则判断自己是不是此最短路径的最后一个总线,如果是,则说明所调用的服务代码绑定在自己所在的服务总线上,该服务总线把服务调用者的请求数据发送给服务调用者所在的服务代码处;如果不是,再判断最短路径中的下个总线代码,指定的服务总线在服务调用者的请求数据中加入最短路径,把最短路径和服务调用者的请求数据一起发送到最短路径中的下个服务总线,回到步骤(4),进行循环操作。
CNB200710191521XA 2007-12-12 2007-12-12 Soa架构下多级服务总线的服务调用的动态路由方法 Expired - Fee Related CN100561986C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB200710191521XA CN100561986C (zh) 2007-12-12 2007-12-12 Soa架构下多级服务总线的服务调用的动态路由方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB200710191521XA CN100561986C (zh) 2007-12-12 2007-12-12 Soa架构下多级服务总线的服务调用的动态路由方法

Publications (2)

Publication Number Publication Date
CN101179505A CN101179505A (zh) 2008-05-14
CN100561986C true CN100561986C (zh) 2009-11-18

Family

ID=39405596

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200710191521XA Expired - Fee Related CN100561986C (zh) 2007-12-12 2007-12-12 Soa架构下多级服务总线的服务调用的动态路由方法

Country Status (1)

Country Link
CN (1) CN100561986C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103078775B (zh) * 2012-12-31 2018-05-04 新奥特(北京)视频技术有限公司 一种基于多级esb总线间信息交互的方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006127061A2 (en) * 2005-05-26 2006-11-30 Bea Systems, Inc. Service-oriented architecture implementation planning
CN1941771A (zh) * 2005-09-27 2007-04-04 国际商业机器公司 用于面向服务的体系结构应用的Web服务信息管理方法和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006127061A2 (en) * 2005-05-26 2006-11-30 Bea Systems, Inc. Service-oriented architecture implementation planning
CN1941771A (zh) * 2005-09-27 2007-04-04 国际商业机器公司 用于面向服务的体系结构应用的Web服务信息管理方法和系统

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
电力企业信息化SOA实践. 费圣英,96-129,南京大学出版社. 2007
电力企业信息化SOA实践. 费圣英,96-129,南京大学出版社. 2007 *
面向服务架构的电力系统信息集成研究. 许卫兵,孙佐,陈继军.中国仪器仪表,第6期. 2007
面向服务架构的电力系统信息集成研究. 许卫兵,孙佐,陈继军.中国仪器仪表,第6期. 2007 *
面向服务的架构在电力营销中的应用. 陈静.电力需求侧管理,第8卷第5期. 2006
面向服务的架构在电力营销中的应用. 陈静.电力需求侧管理,第8卷第5期. 2006 *

Also Published As

Publication number Publication date
CN101179505A (zh) 2008-05-14

Similar Documents

Publication Publication Date Title
CN1867024B (zh) 一种计费信息发送方法
US7949332B2 (en) Feature sharing
CN103312660B (zh) 一种基于能力开放平台的业务实现方法及能力开放平台
US8886805B2 (en) Method and system for dynamically allocating services for subscribers data traffic
EP1320214A1 (en) Unified account management for data network access
CN104144402A (zh) 实现移动终端本地化漫游的方法及相关装置
CN101686425B (zh) 一种向全网提供业务的方法及业务网络系统
CN101068243B (zh) 处理网关层与业务层的消息交互系统以及发送、接收方法
CN101668021A (zh) 终端信令平台、运营设备信令平台及三网融合系统
CN102209020B (zh) 一种业务路由方法及其装置和系统
US20060161616A1 (en) Provision of services over a common delivery platform such as a mobile telephony network
CN103209196A (zh) 门户接入方法及装置
WO2011124082A1 (zh) 业务管理系统和方法
CN101335952A (zh) 网络访问接入点管理方法和移动终端
CN104349372A (zh) 定位能力调用方法和系统以及位置服务网关
EP1281269A2 (en) Method of charging for resource usage in a gprs network
CN100561986C (zh) Soa架构下多级服务总线的服务调用的动态路由方法
CN102594866A (zh) 地图服务提供系统和方法
CN102281521A (zh) 一种电信计费运营网系统及其计费方法
CN102625420B (zh) 网络接入方法和系统
CN101730316A (zh) 一种号码变换的方法、系统和装置
JP5505297B2 (ja) コールバックシステム、発信端末、電話中継サーバ、コールバック方法、及びコールバックプログラム
WO2013143206A1 (zh) 一种终端及其获取被叫号码用户状态的方法
JP6087343B2 (ja) パーソナルネットワークの合併方法及び装置、並びにパーソナルネットワークの分割方法及び装置
CN102117472A (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
ASS Succession or assignment of patent right

Owner name: INFORMATION COMMUNICATION BRANCH JIANGSU ELECTRIC

Effective date: 20150513

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150513

Address after: 210024 Shanghai Road, Jiangsu, China, No. 215, No.

Patentee after: JIANGSU ELECTRIC POWER Co.

Patentee after: INFORMATION & TELECOMMUNICATION BRANCH OF STATE GRID JIANGSU ELECTRIC POWER Co.

Address before: 210024 Shanghai Road, Jiangsu, China, No. 215, No.

Patentee before: JIANGSU ELECTRIC POWER Co.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091118

CF01 Termination of patent right due to non-payment of annual fee