CN112468492A - 一种基于dubbo服务分组的路由的方法 - Google Patents
一种基于dubbo服务分组的路由的方法 Download PDFInfo
- Publication number
- CN112468492A CN112468492A CN202011341574.7A CN202011341574A CN112468492A CN 112468492 A CN112468492 A CN 112468492A CN 202011341574 A CN202011341574 A CN 202011341574A CN 112468492 A CN112468492 A CN 112468492A
- Authority
- CN
- China
- Prior art keywords
- service
- client
- dubbo
- calling
- routing
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000013507 mapping Methods 0.000 claims description 9
- 238000004519 manufacturing process Methods 0.000 claims description 3
- 238000005192 partition Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/01—Protocols
- H04L67/133—Protocols for remote procedure calls [RPC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/26—Route discovery packet
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种基于dubbo服务分组的路由的方法,包括以下步骤:步骤:S1、服务端发布服务,应用服务器发布自己的服务分组;S2、客户端订阅服务,客户端按服务名订阅服务端对应服务的所有分组的服务;S3、客户端通过路由模块获取要调用的服务组别,发起RPC调用;S4、完成调用,基于dubbo负载,客户端调用服务端。基于dubbo框架,通过路由从多个服务分组中判断出应该调用的服务分组后,使客户端准确的完成调用服务端,当需要变更配置时,只需变更对应服务分组的缓存数据即可,配置风险小。
Description
技术领域
本发明涉及计算机技术领域,具体的,本发明涉及一种基于dubbo服务分组的路由的方法。
背景技术
随着互联网的快速发展,网站的应用规模不断扩大,常规的垂直应用架构已无法满足大规模的服务需求,分布式服务架构的应用势在必行。dubbo是阿里巴巴公司开源的一个高性能的分布式服务框架,致力于提供高性能和透明化的远程服务调用方案。dubbo具有透明化的远程方法调用、服务自动注册与发现、软负载均衡及容错机制等功能,被国内互联网公司广泛使用。
现有路由规则基于管理平台配置,涉及多种交易时,同一个服务会被多个项目组的多种交易调用,当改动时,会影响到多种交易多个项目组,使多个项目组需要配合观察,配置变动风险大。
发明内容
为了克服现有技术的不足,本发明提供了一种基于dubbo服务分组的路由的方法,以解决上述的技术问题。
本发明解决其技术问题所采用的技术方法是:一种基于dubbo服务分组的路由的方法,其改进之处在于:包括以下步骤:S1、服务端发布服务,应用服务器发布自己的服务分组;S2、客户端订阅服务,客户端按服务名订阅服务端对应服务的所有分组的服务;S3、客户端通过路由模块获取要调用的服务组别,发起RPC调用;S4、完成调用,基于dubbo负载,客户端调用服务端。
在上述方法中,步骤S1,包括以下步骤:
S11、处于不同网络分区的应用服务器发布自己的服务分组,相同服务可以发布相同或不同的分组;
S12、按服务分组配置服务IP,一个服务分组对应至少2个服务IP;
S13、注册服务到zookeeper。
在上述方法中,步骤S2,包括以下步骤:
S21、网关层的不同客户端按服务名订阅服务端对应服务的所有组别的服务;
S22、开通客户端到需要访问的服务端之间的网络;
S23、配置服务映射关系,服务映射关系是分组IP和服务ID的对应关系。
在上述方法中,步骤S3,包括以下步骤:
S31、客户端加载服务映射关系到服务器缓存里,每一个服务ID对应一条或两条服务配置记录,其中一条服务配置记录为生产环境;
S32、客户端调用路由模块,传入服务配置记录至路由模块,返回服务分组的名称至客户端;
S33、客户端根据服务分组的名称获取服务订阅列表内的对应服务的分组,发起RPC调用。
在上述方法中,步骤S31中,当一个服务ID对应两条服务配置记录时,另一条服务配置记录为灰度环境。
本发明本发明基于dubbo框架,通过路由从多个服务分组中判断出应该调用的服务分组后,使客户端准确的完成调用服务端,当需要变更配置时,只需变更对应服务分组的缓存数据即可,配置风险小。另外,本发明按服务分组,多个服务可以任意组合单独配置分组,扩展性强,同时有很强的兼容性,支持多种协议,兼容Hessian通信方式,并且路由规则可控,调用方不需关注路由规则,路由规则由提供方配置即可;可跨网络区访问,基于路由规则,内部打通跨网络区访问关系,实现跨网络区调用,网络关系简单。
附图说明
附图1为本发明中一种基于dubbo服务分组的路由的方法的流程示意图。
附图2为图1中步骤S1的具体步骤的流程示意图。
附图3为图1中步骤S2的具体步骤的流程示意图。
附图4为图1中步骤S3的具体步骤的流程示意图。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整地描述,以充分地理解本发明的目的、特征和效果。显然,所描述的实施例只是本发明的一部分实施例,而不是全部实施例,基于本发明的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本发明保护的范围。另外,专利中涉及到的所有联接/连接关系,并非单指构件直接相接,而是指可根据具体实施情况,通过添加或减少联接辅件,来组成更优的联接结构。本发明创造中的各个技术特征,在不互相矛盾冲突的前提下可以交互组合。
参照图1所示,本发明的一种基于dubbo服务分组的路由的方法包括以下的步骤:
S1、服务端发布服务,应用服务器发布自己的服务分组。
具体的,参照图2所示,处于不同网络分区的应用服务器发布自己的服务分组,服务分组是基于dubbo的服务分组,即dubbo框架里的group,相同服务可以发布相同或不同的分组,即相同的服务可以发布多个分组或同一个分组,当服务接口相同,但是对应的渠道不同时,比如都是扫码接口,但是支持的渠道有支付宝和微信,此时会发布不同的服务分组;按服务分组配置服务IP,一个服务分组对应至少2个服务IP,服务IP是代表集群内服务器的IP,一般一个服务集群至少有2台服务器;注册服务到zookeeper,zookeeper作为dubbo的注册中心,把应用服务器发布的服务的接口名称登记到zookeeper上,以方便订阅者查询哪些服务是可用的。
S2、客户端订阅服务,客户端按服务名订阅服务端对应服务的所有分组的服务。
具体的,参照图3所示,网关层的不同客户端按服务名订阅服务端对应服务的所有组别的服务,服务名即应用服务器发布的服务接口名称,开通客户端到所有需要访问的服务端之间的网络,配置服务映射关系,服务映射关系是分组IP和服务ID的对应关系。
S3、客户端通过路由模块获取要调用的服务组别,发起RPC调用。
具体的,参照图4所示,客户端加载服务映射关系到服务器缓存里,每一个服务ID对应一条或两条服务配置记录,一条服务配置记录为生产环境,另一条服务配置记录为灰度环境,灰度环境可配置也可不配置,配置灰度环境后,可实现服务的灰度发布,可单独配置灰度分组,验证通过后再变更分组上线;客户端调用路由模块,传入服务配置记录至路由模块,返回服务分组名称至客户端;客户端根据服务分组的名称获取服务订阅列表内的对应服务的分组,发起RPC调用,客户端调用服务端,RPC调用即为远程调用。
S4、完成调用,基于dubbo负载,客户端调用服务端。
具体的,基于dubbo框架,通过路由判断应该调用的服务分组后,客户端准确的完成调用服务端。
本发明基于dubbo框架,通过路由从多个服务分组中判断出应该调用的服务分组后,使客户端准确的完成调用服务端,当需要变更配置时,只需变更对应服务分组的缓存数据即可,配置风险小。另外,本发明按服务分组,多个服务可以任意组合单独配置分组,扩展性强,同时有很强的兼容性,支持多种协议,兼容Hessian通信方式,并且路由规则可控,调用方不需关注路由规则,路由规则由提供方配置即可;可跨网络区访问,基于路由规则,内部打通跨网络区访问关系,实现跨网络区调用,网络关系简单。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (5)
1.一种基于dubbo服务分组的路由的方法,其特征在于:包括以下步骤:
S1、服务端发布服务,应用服务器发布自己的服务分组;
S2、客户端订阅服务,客户端按服务名订阅服务端对应服务的所有分组的服务;
S3、客户端通过路由模块获取要调用的服务组别,发起RPC调用;
S4、完成调用,基于dubbo负载,客户端调用服务端。
2.如权利要求1所述的一种基于dubbo服务分组的路由的方法,其特征在于:所述步骤S1,包括以下步骤:
S11、处于不同网络分区的应用服务器发布自己的服务分组,相同服务可以发布相同或不同的分组;
S12、按服务分组配置服务IP,一个服务分组对应至少2个服务IP;
S13、注册服务到zookeeper。
3.如权利要求1所述的一种基于dubbo服务分组的路由的方法,其特征在于:所述步骤S2,包括以下步骤:
S21、网关层的不同客户端按服务名订阅服务端对应服务的所有组别的服务;
S22、开通客户端到需要访问的服务端之间的网络;
S23、配置服务映射关系,服务映射关系是分组IP和服务ID的对应关系。
4.如权利要求1所述的一种基于dubbo服务分组的路由的方法,其特征在于:所述步骤S3,包括以下步骤:
S31、客户端加载服务映射关系到服务器缓存里,每一个服务ID对应一条或两条服务配置记录,其中一条服务配置记录为生产环境;
S32、客户端调用路由模块,传入服务配置记录至路由模块,返回服务分组的名称至客户端;
S33、客户端根据服务分组的名称获取服务订阅列表内的对应服务的分组,发起RPC调用。
5.如权利要求4所述的一种基于dubbo服务分组的路由的方法,其特征在于:所述步骤S31中,当一个服务ID对应两条服务配置记录时,另一条服务配置记录为灰度环境。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011341574.7A CN112468492A (zh) | 2020-11-25 | 2020-11-25 | 一种基于dubbo服务分组的路由的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011341574.7A CN112468492A (zh) | 2020-11-25 | 2020-11-25 | 一种基于dubbo服务分组的路由的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112468492A true CN112468492A (zh) | 2021-03-09 |
Family
ID=74808219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011341574.7A Pending CN112468492A (zh) | 2020-11-25 | 2020-11-25 | 一种基于dubbo服务分组的路由的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112468492A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115037617A (zh) * | 2022-05-16 | 2022-09-09 | 中国农业银行股份有限公司 | 一种dubbo服务治理的优化方法及装置 |
CN115037617B (zh) * | 2022-05-16 | 2024-07-09 | 中国农业银行股份有限公司 | 一种dubbo服务治理的优化方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104426871A (zh) * | 2013-08-29 | 2015-03-18 | 中兴通讯股份有限公司 | 一种远程调用的方法和装置 |
CN111580797A (zh) * | 2020-05-13 | 2020-08-25 | 上海创蓝文化传播有限公司 | 基于dubbo和spring框架的动态路由分组的方法 |
-
2020
- 2020-11-25 CN CN202011341574.7A patent/CN112468492A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104426871A (zh) * | 2013-08-29 | 2015-03-18 | 中兴通讯股份有限公司 | 一种远程调用的方法和装置 |
CN111580797A (zh) * | 2020-05-13 | 2020-08-25 | 上海创蓝文化传播有限公司 | 基于dubbo和spring框架的动态路由分组的方法 |
Non-Patent Citations (1)
Title |
---|
张羽: ""一种分布式服务治理框架的设计与实现"", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115037617A (zh) * | 2022-05-16 | 2022-09-09 | 中国农业银行股份有限公司 | 一种dubbo服务治理的优化方法及装置 |
CN115037617B (zh) * | 2022-05-16 | 2024-07-09 | 中国农业银行股份有限公司 | 一种dubbo服务治理的优化方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7903637B2 (en) | Universal communications identifier | |
CA2916217C (en) | Determining a time to permit a communications session to be conducted | |
CN101232626B (zh) | 一种基于企业业务开发平台的业务支撑系统和方法 | |
US7058046B2 (en) | Scalable call management system | |
US20020122547A1 (en) | Method and apparatus for telephony route selection | |
CN100459723C (zh) | 下一代网络中实现路由的方法 | |
US20120307993A1 (en) | Method and System for Resolving Phone Numbers for Filtering Voice Calls | |
CN113596110A (zh) | 一种面向异构云的云原生微服务平台 | |
CN110209719A (zh) | 一种基于微服务架构的多种数据库统一访问系统及方法 | |
US20200112775A1 (en) | Origination and Destination Based Routing | |
CN1963853A (zh) | 企业信息化管理系统 | |
CN111309691A (zh) | 基于总线架构的数据共享交换系统和交换方法 | |
CN104901954A (zh) | 一种物联网软交换系统及其方法 | |
CN112468492A (zh) | 一种基于dubbo服务分组的路由的方法 | |
CN1972276A (zh) | 一种协议访问管理方法和系统 | |
CN100353720C (zh) | 实现媒体流旁路的方法 | |
CN107154942A (zh) | 一种通过第三方服务器提供自动化服务的方法 | |
CN111580998A (zh) | SaaS服务模式下多租户的RPC调用方法 | |
CN112839136B (zh) | 注册终端的通话方法及通话系统 | |
CN1567966A (zh) | 基于应用服务器的ip电话点击拨号方法 | |
US20240073150A1 (en) | Apparatus and method for network function signaling latency reduction | |
US20160171105A1 (en) | Systems and methods for locating user and account information | |
CN210444293U (zh) | 一种外呼数据处理装置 | |
CN101064660A (zh) | 一种实现业务互通的系统及方法 | |
Jammulamadaka et al. | Infrastructure ENUM implementation in Australia |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210309 |