CN107635022A - 跨内外网服务访问方法和装置 - Google Patents

跨内外网服务访问方法和装置 Download PDF

Info

Publication number
CN107635022A
CN107635022A CN201610567634.4A CN201610567634A CN107635022A CN 107635022 A CN107635022 A CN 107635022A CN 201610567634 A CN201610567634 A CN 201610567634A CN 107635022 A CN107635022 A CN 107635022A
Authority
CN
China
Prior art keywords
service
isp
outer net
address information
intranet
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
Application number
CN201610567634.4A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Huawei Software Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201610567634.4A priority Critical patent/CN107635022A/zh
Publication of CN107635022A publication Critical patent/CN107635022A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种跨内外网服务访问方法和装置。包括:服务提供者向服务注册中心发送包括服务提供者可提供的服务的服务名与服务提供者的地址信息之间的映射关系的服务注册消息,其中,服务提供者的地址信息包括:表示服务提供者的内网网络之间互连的协议IP和内网端口号的内网地址信息,以及,表示服务提供者的外网网络之间互连的协议IP和外网端口号的外网地址信息。由于服务提供者向服务注册中心同时注册了内网地址信息和外网地址信息,实现外网服务调用者自动发现内网中的服务提供者提供的服务,并可直接访问内网中的服务提供者以获取所需的服务,有效提高了安全性。

Description

跨内外网服务访问方法和装置
技术领域
本发明涉及通信技术,尤其涉及一种跨内外网服务访问方法和装置。
背景技术
互联网时代,为了保证业务***不被海量访问压垮,同时又为了保证较高的资源利用率,传统应用都开始向云上迁移,除了运行环境会采用云主机外,一般的技术架构都遵从分布式服务框架(Distribute Service Framework,简称为:DSF),因为只有这样的架构才能实现云上应用的弹性伸缩。
图1所示为DSF的架构示意图,如图1所示,DSF中引入独立的服务注册中心,从而服务提供者会通过内网向服务注册中心注册,以使服务调用者可以向服务注册中心订阅感兴趣的服务,并接收服务注册中心推送的可以访问的服务列表,进而服务调用者从服务提供者调用所需的服务,以实现服务的发现和路由。
而在大型项目中,因为有异地协同开发,所以经常需要异地联调,服务之间的需要跨公网内网相互访问。
具体的,如图2所示:首先,IP为(10.xx.xx.xx)的服务提供者通过DSF向服务注册中心注册自己可提供的服务的服务标识,格式一般为(服务提供者可提供的服务的服务名:服务提供者的IP地址),图2中为(服务1:10.xx.xx.xx);进而,IP为(14.145.xx.xx)的外网服务调用者会通过DSF以及网关的IP映射访问服务注册中心,向服务注册中心订阅感兴趣的服务,并接收服务注册中心推送的可以访问的服务列表;内网服务调用者由于和服务注册中心同在内网,因此会直接通过DSF访问服务注册中心,向服务注册中心订阅感兴趣的服务,并接收服务注册中心推送的可以访问的服务列表;虽然外网服务调用者和内网服务调用者均可以从服务注册中心获取各个服务提供者注册的服务标识,但外网服务调用者因为和服务提供者在不同网段,所以外网服务调用者无法访问服务提供者,从而无法获取所需的服务内容。
现有技术中,通过配置两个服务注册中心,从而使得外网服务调用者可以访问处于内网的服务提供者,以获取所需的服务。
图3所示为现有技术中通过配置两个服务注册中心,从而使得外网服务调用者可以访问处于内网的服务提供者的流程图,如图3所示:
S1:服务提供者向内网服务注册中心注册自己可提供的服务的服务标识,格式为(服务提供者可提供的服务的服务名:服务提供者的内网IP地址)图中为:(服务1:10.xx.xx.xx);
S2:服务提供者向外网服务注册中心注册自己可提供的服务的服务标识,格式为(服务提供者可提供的服务的服务名:服务提供者的外网IP地址)图中为:(服务1:14.145.xx.xx);
S3:网关配置服务提供者的内网地址信息和服务提供者的外网地址信息的映射关系,实现由外网地址信息到内网地址信息的映射,其中,服务提供者的内网地址信息包括服务提供者的内网IP和内网端口号,服务提供者的外网地址信息包括服务提供者的外网IP和外网端口号;
S4:外网服务调用者向外网服务注册中心订阅感兴趣的服务,并接收服务注册中心推送的可以访问的服务信息,格式为:(服务名:服务提供者的外网IP地址);
S5:外网服务调用者通过服务提供者的外网IP地址访问服务提供者,网关根据S2的配置将服务提供者的外网IP地址转成服务提供者的内网IP地址,实现对真正内网服务的访问;
S6:内网服务调用者向服务注册中心订阅感兴趣的服务,并接收服务注册中心推送的可以访问的服务信息,格式为:(服务名:服务提供者的内网IP地址);
S7:内网服务调用者通过S6获取的服务信息在内网网段直接访问服务提供者。
通过上述的方法可以使得外网服务调用者访问处于内网的服务提供者,以获取所需的服务,但S2中会出现处于内网的服务提供者对处于外网的外网服务注册中心的访问,从而会带来安全问题。
发明内容
本发明实施例提供一种跨内外网服务访问方法和装置,以克服现有技术中为了为了使得外网服务调用者访问处于内网的服务提供者而带来的安全问题。
本发明第一方面提供一种跨内外网服务访问方法,包括:服务提供者向服务注册中心发送服务注册消息,服务注册消息中包括:服务提供者可提供的服务的服务名与服务提供者的地址信息之间的映射关系,服务提供者的地址信息包括:服务提供者的内网地址信息和服务提供者的外网地址信息,服务提供者的内网地址信息包括:服务提供者的内网网络之间互连的协议IP和内网端口号,服务提供者的外网地址信息包括:服务提供者的外网网络之间互连的协议IP和外网端口号。
本实施例中,由于服务提供者向服务注册中心同时注册了内网地址信息和外网地址信息,实现外网服务调用者自动发现内网中的服务提供者提供的服务,并可直接访问内网中的服务提供者以获取所需的服务,有效提高了安全性。
在本发明的一些实施例中,上述方法还包括:服务提供者向网关发送配置消息,配置消息包括:服务提供者的内网地址信息和服务提供者的外网地址信息之间的映射关系。
在本实施例中,通过配置网关中的服务提供者的内网地址信息和服务提供者的外网地址信息之间的映射关系,当网关接收到服务调用者发送包括外网地址信息的请求消息后,通过映射关系便可得到与之对应的内网地址信息,从而将请求消息通过对应的内网地址信息发送至服务提供者,从而避免了外网直接访问内网的情况,有效提高了安全性。
在本发明的一些实施例中,服务提供者接收网关发送的服务调用请求转发消息,服务调用请求转发消息中包括:外网服务调用者请求的服务的第一服务名和第一服务名对应的服务提供者的内网地址信息;服务提供者确定与第一服务名对应的服务内容;服务提供者向外网服务调用者发送与第一服务名对应的服务内容。
本实施例中,通过配置网关中的服务提供者的内网地址信息和服务提供者的外网地址信息之间的映射关系,当网关接收到服务调用者发送包括外网地址信息的请求消息后,通过映射关系便可得到与之对应的内网地址信息,从而将请求消息通过对应的内网地址信息发送至服务提供者,从而避免了外网直接访问内网的情况,有效提高了安全性。
本发明第二方面提供一种跨内外网服务访问方法,包括:
服务注册中心接收服务提供者发送的服务注册消息,服务注册消息中包括:服务提供者可提供的服务的服务名与服务提供者的地址信息之间的映射关系,服务提供者的地址信息包括:服务提供者的内网地址信息和服务提供者的外网地址信息,服务提供者的内网地址信息包括:服务提供者的内网网络之间互连的协议IP和内网端口号,服务提供者的外网地址信息包括:服务提供者的外网网络之间互连的协议IP和外网端口号;
服务注册中心保存服务注册信息。
本实施例中,由于服务提供者向服务注册中心同时注册了内网地址信息和外网地址信息,实现外网服务调用者自动发现内网中的服务提供者提供的服务,并可直接访问内网中的服务提供者以获取所需的服务,有效提高了安全性。
在本发明的一些实施例中,服务注册中心保存服务注册信息之后,还包括:首先,服务注册中心接收外网服务调用者发送的第一请求消息,第一请求消息中包括外网服务调用者所需服务的第一关键字;然后,服务注册中心根据服务注册消息和第一关键字确定至少一个与第一关键字对应的服务名;最后,服务注册中心向外网服务调用者发送第一请求响应消息,第一请求响应消息中包括:至少一个与第一关键字对应的服务名和每个与第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
在本实施例中,服务注册中心可根据外网服务调用者发送的第一请求消息,仅仅向外网服务调用者反馈至少一个与第一关键字对应的服务名和每个与第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系,而不向外网服务调用者反馈任何与内网地址信息相关的消息,从而降低了服务注册中心与外网服务调用者之间进行数据交互的时延。
在本发明的一些实施例中,服务注册中心保存服务注册信息之后,还包括:首先,服务注册中心接收内网服务调用者发送的第二请求消息,第二请求消息中包括内网服务调用者所需服务的第二关键字;然后,服务注册中心根据服务注册消息和第二关键字确定至少一个与第二关键字对应的服务名;最后,服务注册中心向内网服务调用者发送第二请求响应消息,第二请求响应消息中包括:至少一个与第二关键字对应的服务名和每个与第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系。
在本实施例中,服务注册中心可根据内网服务调用者发送的第二请求消息,仅仅向内网服务调用者反馈至少一个与第二关键字对应的服务名和每个与第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系,而不向内网服务调用者反馈任何与外网地址信息相关的消息,从而降低了服务注册中心与内网服务调用者之间进行数据交互的时延。
本发明三方面提供一种跨内外网服务访问方法,包括:首先,外网服务调用者配置服务注册中心的地址为外网地址;然后,外网服务调用者通过外网地址向服务注册中心发送第一请求消息,第一请求消息中包括:外网服务调用者所需服务的第一关键字,第一请求消息用于请求获取服务注册中心保存的至少一个与第一关键字对应的服务名和每个与第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系,每个与第一关键字对应的服务名对应的服务提供者的外网地址信息包括:每个与第一关键字对应的服务名对应的服务提供者的外网网络之间互连的协议IP和外网端口号;最后,外网服务调用者接收服务注册中心发送的第一请求响应消息,第一请求响应消息中包括:至少一个与第一关键字对应的服务名和每个与第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
本实施例中,外网服务调用者通过外网地址向服务注册中心发送第一请求消息,从而服务注册中心可根据外网服务调用者发送的第一请求消息,仅仅向外网服务调用者反馈至少一个与第一关键字对应的服务名和每个与第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系,而不向外网服务调用者反馈任何与内网地址信息相关的消息,从而降低了服务注册中心与外网服务调用者之间进行数据交互的时延。
在本发明的一些实施例中,外网服务调用者接收服务注册中心发送的请求响应消息之后,还包括:外网服务调用者向网关发送第一服务调用请求消息,其中,第一服务调用请求消息中包括:第一服务名和第一服务名对应的服务提供者的外网地址信息,以使网关根据配置消息和第一服务名对应的服务提供者的外网地址信息确定与第一服务名对应的服务提供者的内网地址信息,并向与第一服务名对应的服务提供者发送服务调用请求转发消息,服务调用请求转发消息中包括:第一服务名和第一服务名对应的服务提供者的内网地址信息,第一服务名为至少一个与第一关键字对应的服务名中的任一个;外网服务调用者接收服务提供者发送的与第一服务名对应的服务内容。
本实施例中,通过配置网关中的服务提供者的内网地址信息和服务提供者的外网地址信息之间的映射关系,当网关接收到外网服务调用者发送包括外网地址信息的请求消息后,通过映射关系便可得到与之对应的内网地址信息,从而将请求消息通过对应的内网地址信息发送至服务提供者,从而避免了外网直接访问内网的情况,有效提高了安全性。
本发明第四方面提供一种跨内外网服务访问方法,包括:首先,内网服务调用者配置服务注册中心的地址为内网地址;然后,内网服务调用者向服务注册中心发送第二请求消息,第二请求消息中包括:内网服务调用者所需的服务的第二关键字,第二请求消息用于请求获取服务注册中心中保存的至少一个与第二关键字对应的服务名和每个与第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系,每个与第二关键字对应的服务名对应的服务提供者的内网地址信息包括:每个与第二关键字对应的服务名对应的服务提供者的内网网络之间互连的协议IP和内网端口号;最后,内网服务调用者接收服务注册中心发送的第二请求响应消息,第二请求响应消息中包括:至少一个与第二关键字对应的服务名和每个与第二关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
在本实施例中,内网服务调用者向服务注册中心发送第二请求消息,从而服务注册中心可根据内网服务调用者发送的第二请求消息,仅仅向内网服务调用者反馈至少一个与第二关键字对应的服务名和每个与第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系,而不向内网服务调用者反馈任何与外网地址信息相关的消息,从而降低了服务注册中心与内网服务调用者之间进行数据交互的时延。
在本发明的一些实施例中,内网服务调用者接收服务注册中心发送的第二请求响应消息之后,还包括:内网服务调用者向服务提供者发送第二服务调用请求消息,其中,第二服务调用请求消息中包括:内网服务调用者请求的服务的第二服务名和第二服务名对应的服务提供者的内网地址信息;内网服务调用者接收服务提供者发送的与内网服务调用者请求的服务的第二服务名对应的服务内容。
本发明第五方面提供一种跨内外网服务访问装置,装置应用于服务提供者的服务器中,包括:发送模块,用于向服务注册中心发送服务注册消息,服务注册消息中包括:服务提供者可提供的服务的服务名与服务提供者的地址信息之间的映射关系,服务提供者的地址信息包括:服务提供者的内网地址信息和服务提供者的外网地址信息,服务提供者的内网地址信息包括:服务提供者的内网网络之间互连的协议IP和内网端口号,服务提供者的外网地址信息包括:服务提供者的外网网络之间互连的协议IP和外网端口号。
在本发明的一些实施例中,发送模块,还用于向网关发送配置消息,配置消息包括:服务提供者的内网地址信息和服务提供者的外网地址信息之间的映射关系。
在本发明的一些实施例中,装置还包括:接收模块和确定模块,
接收模块,用于接收网关发送的服务调用请求转发消息,服务调用请求转发消息中包括:外网服务调用者请求的服务的第一服务名和第一服务名对应的服务提供者的内网地址信息;
确定模块,用于确定与第一服务名对应的服务内容;
发送模块,还用于向外网服务调用者发送与第一服务名对应的服务内容。
本发明第六方面提供一种跨内外网服务访问装置,跨内外网服务访问装置应用于服务注册中心中,装置包括:
接收模块,用于接收服务提供者发送的服务注册消息,服务注册消息中包括:服务提供者可提供的服务的服务名与服务提供者的地址信息之间的映射关系,服务提供者的地址信息包括:服务提供者的内网地址信息和服务提供者的外网地址信息,服务提供者的内网地址信息包括:服务提供者的内网网络之间互连的协议IP和内网端口号,服务提供者的外网地址信息包括:服务提供者的外网网络之间互连的协议IP和外网端口号;
保存模块,用于保存服务注册信息。
在本发明的一些实施例中,装置还包括:确定模块和发送模块,
接收模块,还用于在保存模块保存服务注册信息之后,接收外网服务调用者发送的第一请求消息,第一请求消息中包括外网服务调用者所需服务的第一关键字;
确定模块,用于根据服务注册消息和第一关键字确定至少一个与第一关键字对应的服务名;
发送模块,用于向外网服务调用者发送第一请求响应消息,第一请求响应消息中包括:至少一个与第一关键字对应的服务名和每个与第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
在本发明的一些实施例中,接收模块还用于:在保存模块保存服务注册信息之后,接收内网服务调用者发送的第二请求消息,第二请求消息中包括内网服务调用者所需服务的第二关键字;
确定模块,还用于根据服务注册消息和第二关键字确定至少一个与第二关键字对应的服务名;
服务注册中心向内网服务调用者发送第二请求响应消息,第二请求响应消息中包括:至少一个与第二关键字对应的服务名和每个与第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系。
本发明第七方面提供一种跨内外网服务访问装置,跨内外网服务访问装置应用于外网服务调用者的服务器中,装置包括:
配置模块,用于配置服务注册中心的地址为外网地址;
发送模块,用于通过外网地址向服务注册中心发送第一请求消息,第一请求消息中包括:外网服务调用者所需服务的第一关键字,第一请求消息用于请求获取服务注册中心保存的至少一个与第一关键字对应的服务名和每个与第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系,每个与第一关键字对应的服务名对应的服务提供者的外网地址信息包括:每个与第一关键字对应的服务名对应的服务提供者的外网网络之间互连的协议IP和外网端口号;
接收模块,用于接收服务注册中心发送的第一请求响应消息,第一请求响应消息中包括:至少一个与第一关键字对应的服务名和每个与第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
在本发明的一些实施例中,发送模块,还用于在接收模块接收服务注册中心发送的请求响应消息之后,向网关发送第一服务调用请求消息,其中,第一服务调用请求消息中包括:第一服务名和第一服务名对应的服务提供者的外网地址信息,以使网关根据配置消息和第一服务名对应的服务提供者的外网地址信息确定与第一服务名对应的服务提供者的内网地址信息,并向与第一服务名对应的服务提供者发送服务调用请求转发消息,服务调用请求转发消息中包括:第一服务名和第一服务名对应的服务提供者的内网地址信息,第一服务名为至少一个与第一关键字对应的服务名中的任一个;
接收模块,还用于接收服务提供者发送的与第一服务名对应的服务内容。
本发明第八方面提供一种跨内外网服务访问装置,跨内外网服务访问装置应用于内网服务调用者的服务器中,装置包括:
配置模块,用于配置服务注册中心的地址为内网地址;
发送模块,用于向服务注册中心发送第二请求消息,第二请求消息中包括:内网服务调用者所需的服务的第二关键字,第二请求消息用于请求获取服务注册中心中保存的至少一个与第二关键字对应的服务名和每个与第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系,每个与第二关键字对应的服务名对应的服务提供者的内网地址信息包括:每个与第二关键字对应的服务名对应的服务提供者的内网网络之间互连的协议IP和内网端口号;
接收模块,用于接收服务注册中心发送的第二请求响应消息,第二请求响应消息中包括:至少一个与第二关键字对应的服务名和每个与第二关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
在本发明的一些实施例中,发送模块,还用于在接收模块接收服务注册中心发送的第二请求响应消息之后,向服务提供者发送第二服务调用请求消息,其中,第二服务调用请求消息中包括:内网服务调用者请求的服务的第二服务名和第二服务名对应的服务提供者的内网地址信息;
接收模块,还用于接收服务提供者发送的与内网服务调用者请求的服务的第二服务名对应的服务内容。
本发明实施例中,服务提供者向服务注册中心发送包括服务提供者可提供的服务的服务名与服务提供者的地址信息之间的映射关系的服务注册消息,其中,服务提供者的地址信息包括:表示服务提供者的内网网络之间互连的协议IP和内网端口号的内网地址信息,以及,表示服务提供者的外网网络之间互连的协议IP和外网端口号的外网地址信息。由于服务提供者向服务注册中心同时注册了内网地址信息和外网地址信息,实现外网服务调用者自动发现内网中的服务提供者提供的服务,并可直接访问内网中的服务提供者以获取所需的服务,有效提高了安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1所示为DSF的架构示意图;
图2所示为跨公网内网相互访问的示意图;
图3所示为现有技术中通过配置两个服务注册中心;
图4所示为本发明实施例提供的***架构图;
图5所示为本发明实施例提供的跨内外网服务访问方法的流程图;
图6所示为本发明实施例提供的跨内外网服务访问方法的具体应用示意图;
图7所示为本发明实施例提供的跨内外网服务访问装置一;
图8所示为本发明实施例提供的跨内外网服务访问装置二;
图9所示为本发明实施例提供的跨内外网服务访问装置三;
图10所示为本发明实施例提供的跨内外网服务访问装置四;
图11所示为本发明实施例提供的跨内外网服务访问装置五。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
本发明实施例描述的网络架构以及业务场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
本发明的说明书、权利要求书及上述附图中的术语“第一”、“第二”、等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤的过程、方法、包含一系列单元、模块的***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。本发明中所涉及的“至少一种”是指一种,或者多种的意思。
首先对本发明实施例中所涉及的几个名词进行解释:
远程过程调用协议(Remote Procedure Call Protocol,简称为:RPC):是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如:传输控制协议(Transmission Control Protocol,简称为:TCP)或用户数据报协议(User Datagram Protocol,简称为:UDP),为通信程序之间携带信息数据。在开放式***互联(Open System Interconnection,简称为:OSI)网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。
分布式服务框架(Distribute Service Framework,简称为:DSF):是对RPC框架的进一步封装,RPC一般仅能解决两个进程间的点对点远程通信,而分布式服务访问框架除了点对点的远程通信框架之外,还定义了服务的元数据模型,同时引入独立的服务注册中心,帮助服务提供者实现服务向中心节点注册,支持服务调用者从服务注册中心获取可以访问的服务列表,实现服务的发现和路由。
互联网时代,因为业务访问量很难预知,为了保证业务***不被海量访问压垮同时又为了保证较高的资源利用率,传统应用都开始向云上迁移,除了运行环境会采用云主机外,一般的技术架构都遵从分布式无状态架构,因为只有这样的架构才能实现云上应用的弹性伸缩。
更进一步地,为了实现***解耦,提高交付的产能,实现多团队并行开发,快速上线,分布式架构进一步向微服务架构演进。微服务架构的重要技术特征就是一个功能一个进程,进程间通过远程通信相互访问,所以轻量的RPC通信框架成为微服务架构的核心技术。本发明涉及的技术背景就是解决轻量的RPC通信框架碰到的技术问题,也即轻量的RPC通信框架中的DSF架构碰到的技术问题。
本发明通过对DSF架构的改进,采用服务提供者向服务注册中心注册时采用内网地址信息和外网地址信息同时注册的方法,同时根据内网地址信息和外网地址信息的映射关系配置网关,实现外网服务调用者自动发现内网中的服务提供者提供的服务,并可直接访问内网中的服务提供者以获取所需的服务,从而无需处于内网对外网的访问,有效提高了安全性。
图4所示为本发明实施例提供的***架构图,如图4所示,该架构中包括:外网服务调用者、服务提供者、服务注册中心、RPC通信框架和RPCSDK,
其中,外网服务调用者:用于调用服务提供者提供的服务;
服务提供者:用于提供服务;
RPC通信框架:负责进程间的通信,服务间的访问通信;
RPCSDK:内嵌式的SDK,负责服务的注册、订阅、推送、路由、流控等核心功能;
服务注册中心:负责服务的注册、存储和推送,负责对集群服务所在进程的状态监控,上线和下线。
本架构中的订阅和推送的含义与图2中相同,在以下实施例中会有不同的表述方式,但目的均是相同的。
下面基于上述的架构示出本发明提供的跨内外网服务访问方法的具体流程。
图5所示为本发明实施例提供的跨内外网服务访问方法的流程图,如图5所示,所述方法应用的网元有:服务提供者、服务注册中心、网关、外网服务调用者和内网服务调用者,该方法包括:
S101:服务提供者向服务注册中心发送服务注册消息,服务注册消息中包括:服务提供者可提供的服务的服务名与服务提供者的地址信息之间的映射关系,服务提供者的地址信息包括:服务提供者的内网地址信息和服务提供者的外网地址信息,服务提供者的内网地址信息包括:服务提供者的内网网络之间互连的协议IP和内网端口号,服务提供者的外网地址信息包括:服务提供者的外网网络之间互连的协议IP和外网端口号。
S102:服务注册中心接收服务提供者发送的服务注册消息,服务注册消息中包括:服务提供者可提供的服务的服务名与服务提供者的地址信息之间的映射关系,服务提供者的地址信息包括:服务提供者的内网地址信息和服务提供者的外网地址信息,服务提供者的内网地址信息包括:服务提供者的内网网络之间互连的协议IP和内网端口号,服务提供者的外网地址信息包括:服务提供者的外网网络之间互连的协议IP和外网端口号;且服务注册中心保存服务注册信息。
在实际应用中,可以有多个服务提供者,因此,服务注册中心会收到多个服务提供者发送的服务注册消息,此时服务注册中心中可以维护如表1所示的映射关系表,当接收到任一个服务提供者发送的服务注册消息后,只需将服务注册消息的内容添加至表1中:
表1
为了让服务提供者得知发送的服务注册消息已被服务注册中心成功接收,而避免服务提供者重新发送该服务注册消息,
在本发明一种可实现方式中,可以预设一个时间阈值,当服务提供者向服务注册中心发送该服务注册消息后,在上述的时间阈值内,如果没有接收到服务注册中心发送的任何消息,则默认服务注册中心已成功接收到该服务注册消息。
在发明另一种可实现的方式中,服务注册中心可以向服务提供者发送服务注册响应消息,该服务注册响应消息用于指示服务注册中心已成功接收到服务注册消息,而当服务提供者接收服务注册中心发送的服务注册响应消息。
上述的服务注册消息的发送时间可以为:服务注册中心接收到服务注册消息之后且服务注册中心保存接收到的服务注册消息之前;或,服务注册中心保存接收到的服务注册消息之后,本发明不对其加以限制。
值得注意的是,本实施例中的服务注册中心均指的是内网服务注册中心。
在服务提供者向服务注册中心发送服务注册消息之后,所述方法还包括:
S103:服务提供者还需向网关发送配置消息,其中,配置消息包括:服务提供者的内网地址信息和服务提供者的外网地址信息之间的映射关系。
S104:网关接收服务提供者发送的配置消息,并保存。
在一种可实现的方式中,网关中可以维护一个用于保存配置消息的表,当接收到服务提供者发送的配置消息后,直接将该配置消息保存在维护的表中,该表可以为表2的形式:
表2
服务提供者1的内网地址信息 服务提供者1的外网地址信息
服务提供者n的内网地址信息 服务提供者n的内网地址信息
至此,配置过程完成,以下介绍配置过程完成后,外网服务调用者从服务提供者获取所需服务的流程图:
首先外网服务调用者需要从服务注册中心保存的服务注册消息中订阅自己感兴趣的服务,并接收服务注册中心发送的包括外网服务调用者感兴趣的服务的服务名和该服务名对应的服务提供者的外网地址信息之间的映射关系。具体的:
S201:外网服务调用者配置服务注册中心的地址为外网地址;
在本步骤中,外网服务调用者可以通过DSF配置服务注册中心的地址为外网地址,且在本步骤中,外网服务调用者可以显式地配置服务注册中心的地址为外网地址。
S202:外网服务调用者通过外网地址向服务注册中心发送第一请求消息,第一请求消息中包括:外网服务调用者所需服务的第一关键字,第一请求消息用于请求获取服务注册中心保存的至少一个包含第一关键字的服务名与每个包含第一关键字的服务名对应的服务提供者的外网地址信息之间的映射关系,每个包含第一关键字的服务名对应的服务提供者的外网地址信息包括:每个包含第一关键字的服务名对应的服务提供者的外网网络之间互连的协议IP和外网端口号;
当服务注册中心接收外网服务调用者发送的包括外网服务调用者所需服务的第一关键字的第一请求消息后,服务注册中心根据服务注册消息和第一关键字确定至少一个包含第一关键字的服务名,进而,执行步骤203:
S203:服务注册中心向外网服务调用者发送第一请求响应消息,第一请求响应消息中包括:至少一个与第一关键字对应的服务名和每个与第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
以使外网服务调用者接收服务注册中心发送的第一请求响应消息。
例如:外网服务调用者所需服务的第一关键字为电影,此时,服务注册中心保存的为表3,
表3
当服务注册中心接收到第一请求消息后,查找与电影对应的服务名为港台电影和国产电影,然后服务注册中心向外网服务调用者发送包括(港台电影与外网地址信息1,国产电影与外网地址信息2的第一请求响应消息,由于在S201中,外网服务调用者配置服务注册中心的地址为外网地址,所以此时仅仅发送服务提供者对应的外网地址信息。
当外网服务调用者接收到服务注册中心发送的第一请求响应消息后保存该第一请求响应消息,由于该第一请求响应消息中包括了多个服务名,此时,外网服务调用者可以从中选择自己感兴趣的服务,并从对应的服务提供者获取该服务对应的服务内容。具体的:
S204:外网服务调用者向网关发送第一服务调用请求消息,其中,第一服务调用请求消息中包括:第一服务名和第一服务名对应的服务提供者的外网地址信息,以使网关根据配置消息和第一服务名对应的服务提供者的外网地址信息确定与第一服务名对应的服务提供者的内网地址信息,并向与第一服务名对应的服务提供者发送服务调用请求转发消息,服务调用请求转发消息中包括:第一服务名和第一服务名对应的服务提供者的内网地址信息,第一服务名为至少一个包含第一关键字的服务名中的任一个;
S205:服务提供者接收网关发送的服务调用请求转发消息,服务调用请求转发消息中包括:外网服务调用者请求的服务的第一服务名和第一服务名对应的服务提供者的内网地址信息。
当接收网关发送的服务调用请求转发消息后,服务提供者确定与第一服务名对应的服务内容。
S206:服务提供者向外网服务调用者发送与第一服务名对应的服务内容。
以使外网服务调用者可以接收服务提供者发送的与第一服务名对应的服务内容,从而实现外网服务调用者对处于内网的服务提供者的访问。
继续按照上述的例子,当外网服务调用者接收到第一请求响应消息后,发现感兴趣的为国产电影,此时,外网服务调用者需要调用与国产电影对应的内容,但由于国产电影所在的服务提供者2在内网中,因此,此时,外网服务调用者会向网关发送第一服务调用请求消息,该第一服务调用请求消息种包括国产电影和国产电影对应的外网地址信息2,当网关接收到该第一服务调用请求消息后,根据S104中的配置消息,确定与外网地址信息2对应的内网地址信息2,并向服务提供者2发送服务调用请求转发消息,该服务调用请求转发消息中包括:国产电影和国产电影对应的内网地址信息2,当服务提供者2接收到服务调用请求转发消息后,确定与国产电影对应的内容,并向外网服务调用者发送与国产电影对应的内容,进而外网服务调用者接收服务提供者2发送的与国产电影对应的内容,从而实现外网服务调用者对处于内网的服务提供者2的访问,值得注意的是,此时图5中的服务提供者为服务提供者2。
上述的步骤201至步骤206为与外网服务调用者相关的执行流程图,以下介绍配置过程完成后,内网服务调用者从服务提供者获取所需服务的流程图:
S301:内网服务调用者配置服务注册中心的地址为内网地址;
在本步骤中,外网服务调用者可以通过DSF配置服务注册中心的地址为内网地址,且在本步骤中,内网服务调用者可以显式地配置服务注册中心的地址为内网地址。
S302:所述内网服务调用者向所述服务注册中心发送第二请求消息,所述第二请求消息中包括:所述内网服务调用者所需的服务的第二关键字,所述第二请求消息用于请求获取所述服务注册中心中保存的至少一个包含所述第二关键字的服务名与每个包含所述第二关键字的服务名对应的服务提供者的内网地址信息之间的映射关系,每个包含所述第二关键字的服务名对应的服务提供者的内网地址信息包括:每个包含所述第二关键字的服务名对应的服务提供者的内网网络之间互连的协议IP和内网端口号;
当服务注册中心接收内网服务调用者发送的第二请求消息后,服务注册中心根据服务注册消息和第二关键字确定至少一个包含第二关键字的服务名,并执行步骤303:
S303:服务注册中心向内网服务调用者发送第二请求响应消息,该第二请求响应消息中包括:至少一个包含第二关键字的服务名与每个包含第二关键字的服务名对应的服务提供者的内网地址信息之间的映射关系;
以使内网服务调用者接收服务注册中心发送的第二请求响应消息,并保存第二请求响应消息。
继续按照上述表3的例子,内网服务调用者所需服务的第一关键字为综艺,当服务注册中心接收到第二请求消息后,查找与综艺对应的服务名为综艺,然后服务注册中心向内网服务调用者发送包括(综艺与内网地址信息3)的第一请求响应消息,由于在S301中,内网服务调用者配置服务注册中心的地址为内网地址,所以此时仅仅发送服务提供者对应的内网地址信息。
当内网服务调用者接收到服务注册中心发送的第一请求响应消息后保存该第一请求响应消息,由于该第一请求响应消息中包括了多个服务名,此时,内网服务调用者可以从中选择自己感兴趣的服务,并从对应的服务提供者获取该服务对应的服务内容。具体的:
S304:内网服务调用者向服务提供者发送第二服务调用请求消息,其中,第二服务调用请求消息中包括:内网服务调用者请求的服务的第二服务名和第二服务名对应的服务提供者的内网地址信息;以使服务提供者接收内网服务调用者发送的第二服务调用请求消息并确定与第二服务名对应的服务内容。
S305:服务提供者向内网服务调用者发送与第二服务名对应的服务内容。
以使内网服务调用者可以接收服务提供者发送的与第一服务名对应的服务内容,从而实现内网服务调用者对处于内网的服务提供者的访问。
继续按照上述的例子,当内网服务调用者接收到第二请求响应消息后,内网服务调用者需要调用与综艺对应的内容,但由于综艺所在的服务提供者3在内网中,此时,内网服务调用者会直接向服务提供者3发送第二服务调用请求消息,该第二服务调用请求消息种包括综艺和综艺对应的内网地址信息3,当服务提供者3接收到第二服务调用请求消息后,确定与综艺对应的内容,并向内网服务调用者发送与综艺对应的内容,当内网服务调用者接收服务提供者3发送的与综艺对应的内容,从而实现内网服务调用者对处于内网的服务提供者3的访问,值得注意的是,此时图5中的服务提供者为服务提供者3。
本实施例中,服务提供者向服务注册中心发送包括服务提供者可提供的服务的服务名与服务提供者的地址信息之间的映射关系的服务注册消息,其中,服务提供者的地址信息包括:表示服务提供者的内网网络之间互连的协议IP和内网端口号的内网地址信息,以及,表示服务提供者的外网网络之间互连的协议IP和外网端口号的外网地址信息。由于服务提供者向服务注册中心同时注册了内网地址信息和外网地址信息,实现外网服务调用者自动发现内网中的服务提供者提供的服务,并可直接访问内网中的服务提供者以获取所需的服务,有效提高了安全性。
图6所示为本发明实施例提供的跨内外网服务访问方法的具体应用示意图,结合图4和图5的描述,如图6所示,
S11:服务提供者通过DSF向内网服务注册中心发送服务注册消息,格式为(服务提供者可提供的服务的服务名:服务提供者的内网地址信息服务提供者的外网地址信息)图中为:(服务1:10.xx.xx.xx 14.145.xx.xx);
S12:服务提供者通过DSF向网关发送配置消息,以使网关根据该配置消息配置服务提供者的内网地址信息和服务提供者的外网地址信息的映射关系;
S13:外网服务调用者显式地配置DSF的内网服务注册中心地址为外网地址(图中未示出);
S14:外网服务调用者向内网服务注册中心订阅感兴趣的服务,以向内网服务注册中心发送第一请求消息,因为步骤S13配置的是外网地址,所以DSF从内网服务注册中心自动获取(服务名:外网IP)这样的信息给外网服务调用者,图中为(服务1:14.145.xx.xx);
S15:外网服务调用者通过DSF调用步骤S14获取的服务,网关按照步骤S12将外网地址信息转到内网地址信息上,实现外网访问内网服务的目标;
S16:内网服务调用者显式地配置DSF的内网服务注册中心地址为内网地址(图中未示出);
S17:内网服务调用者向内网服务注册中心订阅感兴趣的服务,以向内网服务注册中心发送第二请求消息,并接收内网服务注册中心推送的可以访问的服务信息,因为步骤S16配置的是内网地址,所以DSF从内网服务注册中心自动获取(服务名:内网IP)这样的信息给内网服务调用者,图中为(服务1:10.xx.xx.xx);;
S18:内网服务调用者通过DSF调用步骤S17获取的服务,因为都处于内网,所以直接访问。
上述实施例中信息交互的详细步骤详见图5对应的实施例,本实施例不再赘述。
值得注意的是,本发明实施例中所述的与第一关键字对应的服务名,可以为包括第一关键字的服务名,也可以为与第一关键字类型相同的服务名,例如:第一关键字为电影,那么与第一关键字对应的服务名可以为港台电影、百鸟朝凤等,与第二关键字对应的服务名与上述类似。
图7所示为本发明实施例提供的跨内外网服务访问装置一,本实施例提供的装置应用于服务提供者的服务器中,包括:
发送模块21,用于向服务注册中心发送服务注册消息,所述服务注册消息中包括:所述服务提供者可提供的服务的服务名与所述服务提供者的地址信息之间的映射关系,所述服务提供者的地址信息包括:所述服务提供者的内网地址信息和所述服务提供者的外网地址信息,所述服务提供者的内网地址信息包括:所述服务提供者的内网网络之间互连的协议IP和内网端口号,所述服务提供者的外网地址信息包括:所述服务提供者的外网网络之间互连的协议IP和外网端口号。
可选的,所述发送模块21,还用于:
向网关发送配置消息,所述配置消息包括:所述服务提供者的内网地址信息和所述服务提供者的外网地址信息之间的映射关系。
上述的装置还包括:接收模块22和确定模块23,
所述接收模块22,用于接收网关发送的服务调用请求转发消息,所述服务调用请求转发消息中包括:所述外网服务调用者请求的服务的第一服务名和所述第一服务名对应的服务提供者的内网地址信息;
所述确定模块23,用于确定与所述第一服务名对应的服务内容;
所述发送模块21,还用于向所述外网服务调用者发送与所述第一服务名对应的服务内容。
本实施例的装置,可以用于执行如上述实施例所示的服务提供者执行跨内外网服务访问方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8所示为本发明实施例提供的跨内外网服务访问装置二,本实施提供的跨内外网服务访问装置应用于服务注册中心中,如图8所示,所述装置包括:
接收模块31,用于接收服务提供者发送的服务注册消息,所述服务注册消息中包括:所述服务提供者可提供的服务的服务名与所述服务提供者的地址信息之间的映射关系,所述服务提供者的地址信息包括:所述服务提供者的内网地址信息和所述服务提供者的外网地址信息,所述服务提供者的内网地址信息包括:所述服务提供者的内网网络之间互连的协议IP和内网端口号,所述服务提供者的外网地址信息包括:所述服务提供者的外网网络之间互连的协议IP和外网端口号;
保存模块32,用于保存所述服务注册信息。
图9所示为本发明实施例提供的跨内外网服务访问装置三,如图9所示,在图8的基础上,上述的装置还包括:确定模块33和发送模块34,
所述接收模块31,还用于在所述保存模块32保存所述服务注册信息之后,接收外网服务调用者发送的第一请求消息,所述第一请求消息中包括所述外网服务调用者所需服务的第一关键字;
所述确定模块33,用于根据所述服务注册消息和所述第一关键字确定至少一个与所述第一关键字对应的服务名;
所述发送模块34,用于向所述外网服务调用者发送第一请求响应消息,所述第一请求响应消息中包括:至少一个与所述第一关键字对应的服务名和每个与所述第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
可选的,所述接收模块31还用于:在所述保存模块32保存所述服务注册信息之后,接收内网服务调用者发送的第二请求消息,所述第二请求消息中包括所述内网服务调用者所需服务的第二关键字;
所述确定模块33,还用于根据所述服务注册消息和所述第二关键字确定至少一个与所述第二关键字对应的服务名;
所述服务注册中心向所述内网服务调用者发送第二请求响应消息,所述第二请求响应消息中包括:至少一个与所述第二关键字对应的服务名和每个与所述第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系。
本实施例的装置,可以用于执行如上述实施例所示的服务注册中心执行跨内外网服务访问方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图10所示为本发明实施例提供的跨内外网服务访问装置四,如图10所示,本实施例提供的跨内外网服务访问装置应用于外网服务调用者的服务器中,所述装置包括:
配置模块41,用于配置服务注册中心的地址为外网地址;
发送模块42,用于通过所述外网地址向所述服务注册中心发送第一请求消息,所述第一请求消息中包括:所述外网服务调用者所需服务的第一关键字,所述第一请求消息用于请求获取所述服务注册中心保存的至少一个与所述第一关键字对应的服务名和每个与所述第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系,每个与所述第一关键字对应的服务名对应的所述服务提供者的外网地址信息包括:每个与所述第一关键字对应的服务名对应的服务提供者的外网网络之间互连的协议IP和外网端口号;
接收模块43,用于接收所述服务注册中心发送的第一请求响应消息,所述第一请求响应消息中包括:至少一个与所述第一关键字对应的服务名和每个与所述第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
可选的,所述发送模块42,还用于在所述接收模块43接收所述服务注册中心发送的请求响应消息之后,向网关发送第一服务调用请求消息,其中,所述第一服务调用请求消息中包括:第一服务名和所述第一服务名对应的服务提供者的外网地址信息,以使所述网关根据配置消息和所述第一服务名对应的服务提供者的外网地址信息确定与所述第一服务名对应的服务提供者的内网地址信息,并向与所述第一服务名对应的服务提供者发送服务调用请求转发消息,所述服务调用请求转发消息中包括:所述第一服务名和所述第一服务名对应的服务提供者的内网地址信息,所述第一服务名为至少一个与所述第一关键字对应的服务名中的任一个;
所述接收模块43,还用于接收所述服务提供者发送的与所述第一服务名对应的服务内容。
本实施例的装置,可以用于执行如上述实施例所示的外网服务调用者执行跨内外网服务访问方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图11所示为本发明实施例提供的跨内外网服务访问装置五,如图11所示,本实施例提供的跨内外网服务访问装置应用于内网服务调用者的服务器中,所述装置包括:
配置模块51,用于配置服务注册中心的地址为内网地址;
发送模块52,用于向所述服务注册中心发送第二请求消息,所述第二请求消息中包括:所述内网服务调用者所需的服务的第二关键字,所述第二请求消息用于请求获取所述服务注册中心中保存的至少一个与所述第二关键字对应的服务名和每个与所述第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系,每个与所述第二关键字对应的服务名对应的服务提供者的内网地址信息包括:每个与所述第二关键字对应的服务名对应的服务提供者的内网网络之间互连的协议IP和内网端口号;
接收模块53,用于接收所述服务注册中心发送的第二请求响应消息,所述第二请求响应消息中包括:至少一个与所述第二关键字对应的服务名和每个与所述第二关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
可选的,所述发送模块52,还用于在所述接收模块53接收所述服务注册中心发送的第二请求响应消息之后,向服务提供者发送第二服务调用请求消息,其中,所述第二服务调用请求消息中包括:所述内网服务调用者请求的服务的第二服务名和所述第二服务名对应的服务提供者的内网地址信息;
所述接收模块53,还用于接收所述服务提供者发送的与所述内网服务调用者请求的服务的第二服务名对应的服务内容。
本实施例的装置,可以用于执行如上述实施例所示的内网服务调用者执行跨内外网服务访问方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (20)

1.一种跨内外网服务访问方法,其特征在于,包括:
服务提供者向服务注册中心发送服务注册消息,所述服务注册消息中包括:所述服务提供者可提供的服务的服务名与所述服务提供者的地址信息之间的映射关系,所述服务提供者的地址信息包括:所述服务提供者的内网地址信息和所述服务提供者的外网地址信息,所述服务提供者的内网地址信息包括:所述服务提供者的内网网络之间互连的协议IP和内网端口号,所述服务提供者的外网地址信息包括:所述服务提供者的外网网络之间互连的协议IP和外网端口号。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述服务提供者向网关发送配置消息,所述配置消息包括:所述服务提供者的内网地址信息和所述服务提供者的外网地址信息之间的映射关系。
3.根据权利要求2所述的方法,其特征在于,
所述服务提供者接收所述网关发送的服务调用请求转发消息,所述服务调用请求转发消息中包括:所述外网服务调用者请求的服务的第一服务名和所述第一服务名对应的服务提供者的内网地址信息;
所述服务提供者确定与所述第一服务名对应的服务内容;
所述服务提供者向所述外网服务调用者发送与所述第一服务名对应的服务内容。
4.一种跨内外网服务访问方法,其特征在于,包括:
服务注册中心接收服务提供者发送的服务注册消息,所述服务注册消息中包括:所述服务提供者可提供的服务的服务名与所述服务提供者的地址信息之间的映射关系,所述服务提供者的地址信息包括:所述服务提供者的内网地址信息和所述服务提供者的外网地址信息,所述服务提供者的内网地址信息包括:所述服务提供者的内网网络之间互连的协议IP和内网端口号,所述服务提供者的外网地址信息包括:所述服务提供者的外网网络之间互连的协议IP和外网端口号;
所述服务注册中心保存所述服务注册信息。
5.根据权利要求4所述的方法,其特征在于,所述服务注册中心保存所述服务注册信息之后,还包括:
所述服务注册中心接收外网服务调用者发送的第一请求消息,所述第一请求消息中包括所述外网服务调用者所需服务的第一关键字;
所述服务注册中心根据所述服务注册消息和所述第一关键字确定至少一个与所述第一关键字对应的服务名;
所述服务注册中心向所述外网服务调用者发送第一请求响应消息,所述第一请求响应消息中包括:至少一个与所述第一关键字对应的服务名和每个与所述第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
6.根据权利要求4或5所述的方法,其特征在于,所述服务注册中心保存所述服务注册信息之后,还包括:
所述服务注册中心接收内网服务调用者发送的第二请求消息,所述第二请求消息中包括所述内网服务调用者所需服务的第二关键字;
所述服务注册中心根据所述服务注册消息和所述第二关键字确定至少一个与所述第二关键字对应的服务名;
所述服务注册中心向所述内网服务调用者发送第二请求响应消息,所述第二请求响应消息中包括:至少一个与所述第二关键字对应的服务名和每个与所述第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系。
7.一种跨内外网服务访问方法,其特征在于,包括:
外网服务调用者配置服务注册中心的地址为外网地址;
所述外网服务调用者通过所述外网地址向所述服务注册中心发送第一请求消息,所述第一请求消息中包括:所述外网服务调用者所需服务的第一关键字,所述第一请求消息用于请求获取所述服务注册中心保存的至少一个与所述第一关键字对应的服务名和每个与所述第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系,每个与所述第一关键字对应的服务名对应的所述服务提供者的外网地址信息包括:每个与所述第一关键字对应的服务名对应的服务提供者的外网网络之间互连的协议IP和外网端口号;
所述外网服务调用者接收所述服务注册中心发送的第一请求响应消息,所述第一请求响应消息中包括:至少一个与所述第一关键字对应的服务名和每个与所述第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
8.根据权利要求7所述的方法,其特征在于,所述外网服务调用者接收所述服务注册中心发送的请求响应消息之后,还包括:
所述外网服务调用者向网关发送第一服务调用请求消息,其中,所述第一服务调用请求消息中包括:第一服务名和所述第一服务名对应的服务提供者的外网地址信息,以使所述网关根据配置消息和所述第一服务名对应的服务提供者的外网地址信息确定与所述第一服务名对应的服务提供者的内网地址信息,并向与所述第一服务名对应的服务提供者发送服务调用请求转发消息,所述服务调用请求转发消息中包括:所述第一服务名和所述第一服务名对应的服务提供者的内网地址信息,所述第一服务名为至少一个与所述第一关键字对应的服务名中的任一个;
所述外网服务调用者接收所述服务提供者发送的与所述第一服务名对应的服务内容。
9.一种跨内外网服务访问方法,其特征在于,包括:
内网服务调用者配置服务注册中心的地址为内网地址;
所述内网服务调用者向所述服务注册中心发送第二请求消息,所述第二请求消息中包括:所述内网服务调用者所需的服务的第二关键字,所述第二请求消息用于请求获取所述服务注册中心中保存的至少一个与所述第二关键字对应的服务名和每个与所述第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系,每个与所述第二关键字对应的服务名对应的服务提供者的内网地址信息包括:每个与所述第二关键字对应的服务名对应的服务提供者的内网网络之间互连的协议IP和内网端口号;
所述内网服务调用者接收所述服务注册中心发送的第二请求响应消息,所述第二请求响应消息中包括:至少一个与所述第二关键字对应的服务名和每个与所述第二关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
10.根据权利要求9所述的方法,其特征在于,所述内网服务调用者接收所述服务注册中心发送的第二请求响应消息之后,还包括:
所述内网服务调用者向服务提供者发送第二服务调用请求消息,其中,所述第二服务调用请求消息中包括:所述内网服务调用者请求的服务的第二服务名和所述第二服务名对应的服务提供者的内网地址信息;
所述内网服务调用者接收所述服务提供者发送的与所述内网服务调用者请求的服务的第二服务名对应的服务内容。
11.一种跨内外网服务访问装置,其特征在于,所述装置应用于服务提供者的服务器中,包括:
发送模块,用于向服务注册中心发送服务注册消息,所述服务注册消息中包括:所述服务提供者可提供的服务的服务名与所述服务提供者的地址信息之间的映射关系,所述服务提供者的地址信息包括:所述服务提供者的内网地址信息和所述服务提供者的外网地址信息,所述服务提供者的内网地址信息包括:所述服务提供者的内网网络之间互连的协议IP和内网端口号,所述服务提供者的外网地址信息包括:所述服务提供者的外网网络之间互连的协议IP和外网端口号。
12.根据权利要求11所述的装置,其特征在于,所述发送模块,还用于:
向网关发送配置消息,所述配置消息包括:所述服务提供者的内网地址信息和所述服务提供者的外网地址信息之间的映射关系。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:接收模块和确定模块,
所述接收模块,用于接收网关发送的服务调用请求转发消息,所述服务调用请求转发消息中包括:所述外网服务调用者请求的服务的第一服务名和所述第一服务名对应的服务提供者的内网地址信息;
所述确定模块,用于确定与所述第一服务名对应的服务内容;
所述发送模块,还用于向所述外网服务调用者发送与所述第一服务名对应的服务内容。
14.一种跨内外网服务访问装置,其特征在于,所述跨内外网服务访问装置应用于服务注册中心中,所述装置包括:
接收模块,用于接收服务提供者发送的服务注册消息,所述服务注册消息中包括:所述服务提供者可提供的服务的服务名与所述服务提供者的地址信息之间的映射关系,所述服务提供者的地址信息包括:所述服务提供者的内网地址信息和所述服务提供者的外网地址信息,所述服务提供者的内网地址信息包括:所述服务提供者的内网网络之间互连的协议IP和内网端口号,所述服务提供者的外网地址信息包括:所述服务提供者的外网网络之间互连的协议IP和外网端口号;
保存模块,用于保存所述服务注册信息。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括:确定模块和发送模块,
所述接收模块,还用于在所述保存模块保存所述服务注册信息之后,接收外网服务调用者发送的第一请求消息,所述第一请求消息中包括所述外网服务调用者所需服务的第一关键字;
所述确定模块,用于根据所述服务注册消息和所述第一关键字确定至少一个与所述第一关键字对应的服务名;
所述发送模块,用于向所述外网服务调用者发送第一请求响应消息,所述第一请求响应消息中包括:至少一个与所述第一关键字对应的服务名和每个与所述第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
16.根据权利要求14或15所述的装置,其特征在于,所述接收模块还用于:在所述保存模块保存所述服务注册信息之后,接收内网服务调用者发送的第二请求消息,所述第二请求消息中包括所述内网服务调用者所需服务的第二关键字;
所述确定模块,还用于根据所述服务注册消息和所述第二关键字确定至少一个与所述第二关键字对应的服务名;
所述服务注册中心向所述内网服务调用者发送第二请求响应消息,所述第二请求响应消息中包括:至少一个与所述第二关键字对应的服务名和每个与所述第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系。
17.一种跨内外网服务访问装置,其特征在于,所述跨内外网服务访问装置应用于外网服务调用者的服务器中,所述装置包括:
配置模块,用于配置服务注册中心的地址为外网地址;
发送模块,用于通过所述外网地址向所述服务注册中心发送第一请求消息,所述第一请求消息中包括:所述外网服务调用者所需服务的第一关键字,所述第一请求消息用于请求获取所述服务注册中心保存的至少一个与所述第一关键字对应的服务名和每个与所述第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系,每个与所述第一关键字对应的服务名对应的所述服务提供者的外网地址信息包括:每个与所述第一关键字对应的服务名对应的服务提供者的外网网络之间互连的协议IP和外网端口号;
接收模块,用于接收所述服务注册中心发送的第一请求响应消息,所述第一请求响应消息中包括:至少一个与所述第一关键字对应的服务名和每个与所述第一关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
18.根据权利要求17所述的装置,其特征在于,所述发送模块,还用于在所述接收模块接收所述服务注册中心发送的请求响应消息之后,向网关发送第一服务调用请求消息,其中,所述第一服务调用请求消息中包括:第一服务名和所述第一服务名对应的服务提供者的外网地址信息,以使所述网关根据配置消息和所述第一服务名对应的服务提供者的外网地址信息确定与所述第一服务名对应的服务提供者的内网地址信息,并向与所述第一服务名对应的服务提供者发送服务调用请求转发消息,所述服务调用请求转发消息中包括:所述第一服务名和所述第一服务名对应的服务提供者的内网地址信息,所述第一服务名为至少一个与所述第一关键字对应的服务名中的任一个;
所述接收模块,还用于接收所述服务提供者发送的与所述第一服务名对应的服务内容。
19.一种跨内外网服务访问装置,其特征在于,所述跨内外网服务访问装置应用于内网服务调用者的服务器中,所述装置包括:
配置模块,用于配置服务注册中心的地址为内网地址;
发送模块,用于向所述服务注册中心发送第二请求消息,所述第二请求消息中包括:所述内网服务调用者所需的服务的第二关键字,所述第二请求消息用于请求获取所述服务注册中心中保存的至少一个与所述第二关键字对应的服务名和每个与所述第二关键字对应的服务名对应的服务提供者的内网地址信息之间的映射关系,每个与所述第二关键字对应的服务名对应的服务提供者的内网地址信息包括:每个与所述第二关键字对应的服务名对应的服务提供者的内网网络之间互连的协议IP和内网端口号;
接收模块,用于接收所述服务注册中心发送的第二请求响应消息,所述第二请求响应消息中包括:至少一个与所述第二关键字对应的服务名和每个与所述第二关键字对应的服务名对应的服务提供者的外网地址信息之间的映射关系。
20.根据权利要求19所述的装置,其特征在于,所述发送模块,还用于在所述接收模块接收所述服务注册中心发送的第二请求响应消息之后,向服务提供者发送第二服务调用请求消息,其中,所述第二服务调用请求消息中包括:所述内网服务调用者请求的服务的第二服务名和所述第二服务名对应的服务提供者的内网地址信息;
所述接收模块,还用于接收所述服务提供者发送的与所述内网服务调用者请求的服务的第二服务名对应的服务内容。
CN201610567634.4A 2016-07-18 2016-07-18 跨内外网服务访问方法和装置 Pending CN107635022A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610567634.4A CN107635022A (zh) 2016-07-18 2016-07-18 跨内外网服务访问方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610567634.4A CN107635022A (zh) 2016-07-18 2016-07-18 跨内外网服务访问方法和装置

Publications (1)

Publication Number Publication Date
CN107635022A true CN107635022A (zh) 2018-01-26

Family

ID=61112472

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610567634.4A Pending CN107635022A (zh) 2016-07-18 2016-07-18 跨内外网服务访问方法和装置

Country Status (1)

Country Link
CN (1) CN107635022A (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110224997A (zh) * 2019-05-21 2019-09-10 深圳壹账通智能科技有限公司 基于网关的服务暴露方法、装置及终端设备
CN110247944A (zh) * 2018-03-09 2019-09-17 阿里巴巴集团控股有限公司 跨区域的服务调用方法、装置、***及电子设备
CN110493134A (zh) * 2018-05-15 2019-11-22 视联动力信息技术股份有限公司 一种公网地址获取方法和装置
CN110995733A (zh) * 2019-12-12 2020-04-10 江苏亨通工控安全研究院有限公司 一种基于遥测技术的工控领域的入侵检测***
CN110995728A (zh) * 2019-12-06 2020-04-10 上海上讯信息技术股份有限公司 映射网络的rcp调用方法、装置及电子设备
WO2020094021A1 (zh) * 2018-11-05 2020-05-14 中兴通讯股份有限公司 一种微服务架构下的通信方法及***
CN111431956A (zh) * 2019-01-10 2020-07-17 阿里巴巴集团控股有限公司 跨网络的服务访问方法、设备、***及存储介质
CN112383473A (zh) * 2020-06-12 2021-02-19 支付宝(杭州)信息技术有限公司 辅助区块链网络中的节点建立p2p直连的方法
CN112583891A (zh) * 2020-11-19 2021-03-30 联通智网科技有限公司 接口文档获取方法、装置和服务器
CN112801504A (zh) * 2021-01-28 2021-05-14 国网浙江省电力有限公司信息通信分公司 基于微服务架构的电网服务处理方法
CN112804343A (zh) * 2021-01-28 2021-05-14 杉德银卡通信息服务有限公司 分布式服务治理方法及其***、计算机可读介质
CN112929401A (zh) * 2019-12-06 2021-06-08 华为技术有限公司 一种注册方法及装置
CN113254227A (zh) * 2020-02-11 2021-08-13 千寻位置网络有限公司 跨数据中心的远程方法调用的方法、***
CN114448686A (zh) * 2022-01-14 2022-05-06 武汉三江中电科技有限责任公司 一种基于微服务的跨网络通信装置与方法

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110247944A (zh) * 2018-03-09 2019-09-17 阿里巴巴集团控股有限公司 跨区域的服务调用方法、装置、***及电子设备
CN110493134A (zh) * 2018-05-15 2019-11-22 视联动力信息技术股份有限公司 一种公网地址获取方法和装置
CN110493134B (zh) * 2018-05-15 2022-02-25 视联动力信息技术股份有限公司 一种公网地址获取方法和装置
WO2020094021A1 (zh) * 2018-11-05 2020-05-14 中兴通讯股份有限公司 一种微服务架构下的通信方法及***
CN111431956B (zh) * 2019-01-10 2022-07-05 阿里巴巴集团控股有限公司 跨网络的服务访问方法、设备、***及存储介质
CN111431956A (zh) * 2019-01-10 2020-07-17 阿里巴巴集团控股有限公司 跨网络的服务访问方法、设备、***及存储介质
CN110224997A (zh) * 2019-05-21 2019-09-10 深圳壹账通智能科技有限公司 基于网关的服务暴露方法、装置及终端设备
CN112929401B (zh) * 2019-12-06 2023-12-19 华为云计算技术有限公司 一种注册方法及装置
CN110995728A (zh) * 2019-12-06 2020-04-10 上海上讯信息技术股份有限公司 映射网络的rcp调用方法、装置及电子设备
CN112929401A (zh) * 2019-12-06 2021-06-08 华为技术有限公司 一种注册方法及装置
CN110995733A (zh) * 2019-12-12 2020-04-10 江苏亨通工控安全研究院有限公司 一种基于遥测技术的工控领域的入侵检测***
CN113254227B (zh) * 2020-02-11 2022-07-26 千寻位置网络有限公司 跨数据中心的远程方法调用的方法、***
CN113254227A (zh) * 2020-02-11 2021-08-13 千寻位置网络有限公司 跨数据中心的远程方法调用的方法、***
CN112383473A (zh) * 2020-06-12 2021-02-19 支付宝(杭州)信息技术有限公司 辅助区块链网络中的节点建立p2p直连的方法
CN112583891A (zh) * 2020-11-19 2021-03-30 联通智网科技有限公司 接口文档获取方法、装置和服务器
CN112583891B (zh) * 2020-11-19 2021-07-06 联通智网科技有限公司 接口文档获取方法、装置和服务器
CN112804343A (zh) * 2021-01-28 2021-05-14 杉德银卡通信息服务有限公司 分布式服务治理方法及其***、计算机可读介质
CN112801504A (zh) * 2021-01-28 2021-05-14 国网浙江省电力有限公司信息通信分公司 基于微服务架构的电网服务处理方法
CN114448686A (zh) * 2022-01-14 2022-05-06 武汉三江中电科技有限责任公司 一种基于微服务的跨网络通信装置与方法
CN114448686B (zh) * 2022-01-14 2024-01-05 武汉三江中电科技有限责任公司 一种基于微服务的跨网络通信装置与方法

Similar Documents

Publication Publication Date Title
CN107635022A (zh) 跨内外网服务访问方法和装置
CN111052711B (zh) 发现由网络存储库功能提供的服务的方法
US11765057B2 (en) Systems and methods for performing end-to-end link-layer and IP-layer health checks between a host machine and a network virtualization device
CN106850746B (zh) 服务平滑升级的方法及装置
US7469138B2 (en) Method and system for providing location information for mobile internet calling devices
CN103888928B (zh) 一种业务策略控制方法及***
CN103841134B (zh) 基于api发送、接收信息的方法、装置及***
CN110198363A (zh) 一种移动边缘计算节点的选择方法、装置及***
US20090112875A1 (en) Shared view of customers across business support systems (bss) and a service delivery platform (sdp)
CN110268729A (zh) 向物联网(iot)设备供应设备和/或线路共享能力
EP4177754A1 (en) Nhanced operations between service layer and management layer in an m2m system by allowing the execution of a plurality of commands on a plurality of devices
CN105991694B (zh) 一种实现分布式服务调用的方法与设备
CN106664537A (zh) 抑制第三方注册和第三方注销动作
CN108415710A (zh) 在智能对话开发平台上发布、调用api的方法和***
US20170105144A1 (en) System and method for partitioned wireless telecommunication network deployment
CN109474936A (zh) 应用于多个lora网关之间的物联网通讯方法及***
CN109391502A (zh) 一种信息配置方法和管理单元
CN204695386U (zh) 面向多租户的管理信息***
EP2621243A1 (en) Method and system for configuring and managing third party software, and management server
CN111431818B (zh) 跨域请求的流量分配方法、装置、存储介质及计算机设备
CN109962961A (zh) 一种内容分发网络cdn服务节点的重定向方法及***
CN109981538A (zh) 订阅事件的注册方法及***、订阅事件的处理方法及***
US11533596B2 (en) API publish method and apparatus
CN107402862A (zh) 用于在客户端实现资源编排的方法与设备
CN109889625A (zh) 访问服务器的方法、设备及计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180126

WD01 Invention patent application deemed withdrawn after publication