CN114500655B - 接口请求处理方法、装置、微服务框架的集群***及介质 - Google Patents
接口请求处理方法、装置、微服务框架的集群***及介质 Download PDFInfo
- Publication number
- CN114500655B CN114500655B CN202210394082.7A CN202210394082A CN114500655B CN 114500655 B CN114500655 B CN 114500655B CN 202210394082 A CN202210394082 A CN 202210394082A CN 114500655 B CN114500655 B CN 114500655B
- Authority
- CN
- China
- Prior art keywords
- interface
- service
- registration
- service instance
- request
- 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.)
- Active
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请实施例提供了一种接口请求处理方法、装置、微服务框架的集群***及介质,该方法响应于客户端的接口注册请求,在至少2个服务实例中确定待完成接口注册的目标服务实例,将接口注册请求转发给目标服务实例,通过目标服务实例对接口注册请求进行封装处理,生成业务接口注册信息,通过目标服务实例将业务接口注册信息广播至各个服务实例,通过各个服务实例基于业务接口注册信息进行业务接口注册操作,通过将接口注册请求对应的操作流程拆分为广播和操作的异步处理,实现了集群中各个服务实例动态注册接口,提高了接口处理的实时性和同步性。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种接口请求处理方法、装置、微服务框架的集群***及介质。
背景技术
目前的微服务框架下,http服务端所能提供的api接口在服务端程序设计开发的过程中便确定了,一旦程序运行后,提供的api接口就是固定的,在数据中台的产品中,是对外提供数据服务的能力是一个重要指标,通常会通过http协议的api接口提供,由于数据中台的数据接入处理的过程中,数据种类是动态的,最终治理好的数据对外所要提供的需求也是多种多样的,需要在***中是通过动态添加数据服务接口功能实现,对于集群***,提供一种动态的接口请求处理方法显得尤为重要。
目前,一方面是直接在通过负载均衡服务选中的一个服务中进行接口操作,这种方式只能使得一台服务器能够进行接口服务,导致其它服务无法正常响应,降低了集群***的性能;另一方面是将接口操作信息存储到数据库中,集群***中的所有的服务定时读取数据库的接口操作信息进行更新,难以实现接口操作的实时性和同步性。
发明内容
本申请实施例提供一种接口请求处理方法、装置、微服务框架的集群***及介质,以解决相关技术中接口处理的实时性和同步性低下的技术问题。
一方面,本申请提供一种接口请求处理方法,包括:
响应于客户端的接口注册请求,在所述至少2个服务实例中确定待完成接口注册的目标服务实例;
将所述接口注册请求转发给所述目标服务实例;
通过所述目标服务实例对所述接口注册请求进行封装处理,生成业务接口注册信息;
通过所述目标服务实例将所述业务接口注册信息广播至各个所述服务实例;
通过各个所述服务实例基于所述业务接口注册信息进行业务接口注册操作。
一方面,本申请提供一种接口请求处理装置,包括:
确定模块,用于响应于客户端的接口注册请求,在所述至少2个服务实例中确定待完成接口注册的目标服务实例;
转发模块,用于将所述接口注册请求转发给所述目标服务实例;
封装模块,用于通过所述目标服务实例对所述接口注册请求进行封装处理,生成业务接口注册信息;
广播模块,用于通过所述目标服务实例将所述业务接口注册信息广播至各个所述服务实例;
注册模块,用于通过各个所述服务实例基于所述业务接口注册信息进行业务接口注册操作。
一方面,本申请提供一种微服务框架的集群***,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,实现上述接口请求处理方法中的步骤。
一方面,本申请提供一种计算机可读介质,存储有计算机程序,所述计算机程序被处理器执行时,实现上述接口请求处理方法中的步骤。
本申请实施例提供了一种接口请求处理方法,该方法响应于客户端的接口注册请求,在至少2个服务实例中确定待完成接口注册的目标服务实例,将接口注册请求转发给目标服务实例,通过目标服务实例对接口注册请求进行封装处理,生成业务接口注册信息,通过目标服务实例将业务接口注册信息广播至各个服务实例,通过各个服务实例基于业务接口注册信息进行业务接口注册操作,通过将接口注册请求对应的操作流程拆分为广播和操作的异步处理,实现了集群中各个服务实例动态注册接口,提高了接口处理的实时性和同步性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中接口请求处理方法的流程图;
图2为一个实施例中确定待完成接口注册的目标服务实例的过程示意图;
图3为一个实施例中接口注册/注销的过程示意图;
图4为一个实施例中接口请求处理装置的结构框图;
图5为一个实施例中微服务框架的集群***的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,在一个实施例中,提供了一种接口请求处理方法,该接口请求处理方法应用于微服务框架的集群***中,微服务框架的集群***包括多个客户端和至少2个服务实例,每个服务实例可提供固定的注册接口和注销接口,注册接口用于供集群***中客户端调用注册新的业务接口,注销接口用于供集群***中客户端调用注销已有业务接口,该接口请求处理方法具体包括以下步骤:
步骤102,响应于客户端的接口注册请求,在至少2个服务实例中确定待完成接口注册的目标服务实例。
其中,微服务框架用于将应用程序构建为独立的组件,并将每个应用程序进程作为一项服务运行,这些服务使用明确定义的api接口进行通信。微服务框架的集群***包括多个客户端和至少2个服务实例,且各个服务实例是同一个微服务下的服务,即各个服务实例提供相同的http服务,每个服务实例可提供固定的注册接口和注销接口,注册接口用于供集群***中客户端调用注册新的业务接口,注销接口用于供集群***中客户端调用注销已有业务接口,例如,客户端调用指定的api接口(比如register注册接口、deregister注销接口。接口注册请求是指客户端发送的用于指示集群***注册接口的命令,集群***接收到该请求后,确定需要进行接口注册的服务实例,即本实施例中的待完成接口注册的目标服务实例,具体地,可以根据负载均衡组件预先配置的控制策略,从服务实例中选取一个服务实例确定为目标服务实例。
步骤104,将接口注册请求转发给目标服务实例。
具体地,集群***将接口注册请求转发给目标服务实例,从而目标服务实例接收到接口注册请求。
步骤106,通过目标服务实例对接口注册请求进行封装处理,生成业务接口注册信息。
其中,业务接口注册信息是指用于指示服务实例进行接口注册操作的信息。具体地,目标服务实例在接收到接口注册请求后,对接口注册请求进行封装处理,如生成指定的格式文本,如json文本,生成业务接口注册信息,便于各个服务实例的对接口注册请求的分析。
步骤108,通过目标服务实例将业务接口注册信息广播至各个服务实例。
其中,广播是指消息广播功能,也即是消息的订阅和发布。具体地,通过目标服务实例将业务接口注册信息广播至各个服务实例,使得集群***中各个服务实例监听到该业务接口注册信息,使得各个服务实例接收到业务接口注册信息。
步骤110,通过各个服务实例基于业务接口注册信息进行业务接口注册操作。
具体地,各个服务实例在接收到业务接口注册信息之后,根据业务接口注册信息,同步进行业务接口注册操作,使得各个服务实例服状态一致,实现了集群***中各个服务实例的接口处理的同步性,并且各个服务实例是同时进行业务接口注册操作,提高了接口处理的实时性。本实施例中,通过将接口注册请求对应的操作流程拆分为广播和操作的异步处理,实现了集群中各个服务实例动态注册接口,提高了接口处理的实时性和同步性。
上述接口请求处理方法,响应于客户端的接口注册请求,在至少2个服务实例中确定待完成接口注册的目标服务实例,将接口注册请求转发给目标服务实例,通过目标服务实例对接口注册请求进行封装处理,生成业务接口注册信息,通过目标服务实例将业务接口注册信息广播至各个服务实例,通过各个服务实例基于业务接口注册信息进行业务接口注册操作,通过将接口注册请求对应的操作流程拆分为广播和操作的异步处理,实现了集群中各个服务实例动态注册接口,提高了接口处理的实时性和同步性。
在一个实施例中,接口注册请求包括负载均衡脚本;响应于客户端的接口注册请求,在至少2个服务实例中确定待完成接口注册的目标服务实例的步骤,包括:响应于客户端的接口注册请求,执行负载均衡脚本,生成处理接口注册请求的目标负载标识;根据目标负载标识,从集群***中的多个服务实例中选取对应的服务实例确定为处理接口注册请求的目标服务实例。
其中,负载均衡脚本可以是nginx、spring cloud gateway等负载均衡组件,用于对前端的请求进行负载均衡,目标负载标识是指负载均衡确定的服务实例的标识。具体地,响应于客户端的接口注册请求,执行负载均衡脚本,生成处理接口注册请求的目标负载标识,根据目标负载标识,从集群***中的多个服务实例中选取对应的服务实例,即为处理接口注册请求的目标服务实例。在一个具体实施方式中,如图2所示,为确定待完成接口注册的目标服务实例的过程示意图,假设集群***包括3个服务实例,分别为A1、A2和A3,提供相同的http服务(例如都提供b1、b2两个业务api接口)则A1、A2或者A3中的一个服务实例为目标服务实例。
在一个实施例中,通过目标服务实例对接口注册请求进行封装处理,生成业务接口注册信息步骤,包括:提取接口注册请求中的接口操作类型、接口路径及接口动作;将操作类型、接口路径及接口动作封装为json文本,生成业务接口注册信息。
具体地,目标服务实例接收一个接口注册请求之后,提取接口注册请求中的接口操作类型、接口路径及接口动作,将操作类型、接口路径及接口动作按照指定的格式封装成json文本,例如,json格式消息ml如下代码段如下:
{
"operate": "register", //操作类型
"path": "a/b3", //接口路径
"action": "" //接口动作
}
该json文本即为业务接口注册信息。
在一个实施例中,微服务框架的集群***中包括用于发布和订阅频道的缓存中间件,缓存中间件包括用于确定同一微服务框架的目标频道,集群***中各服务实例预先订阅目标频道,通过目标服务实例将业务接口注册信息广播至各个服务实例的步骤,包括:将业务接口注册信息发布到缓存中间件的目标频道,以使各个服务实例在目标频道进行监听获取业务接口注册信息。
其中,缓存中间件是一种用于发布和订阅频道,具有广播信息功能的中间件,如Redis中间件、rabbitmq中间等,为了提高通信性,本实施例中优选Redis中间件作为缓冲中间件,以利用Redis中间件支持多种编程语言的特性。具体地,集群***中的各个服务实例连接同一个Redis中间件,即Redis服务,订阅目标频道,如apioperate频道),各个服务实例既是目标频道的订阅者,同时也是目标频道的发布者,因此,业务接口注册信息发布到redis中间件的apiop目标频道中,此时各个服务实例均监听redis中间件的apioperate频道,从而接收到该业务接口注册信息,保证了各个服务实例均获取业务接口注册信息。
在一个实施例中,通过各个服务实例基于业务接口注册信息进行业务接口注册操作,包括:通过各个服务实例分别对业务接口注册信息进行解析处理,得到业务接口注册操作信息;通过各个服务实例按照业务接口注册操作信息进行接口注册操作。
其中,业务接口注册操作信息是指服务实例需要进行的接口处理操作,操作路径、操作类型(如接口注册、接口注销、接口修改、接口同步等)。具体地,各个服务实例分别对业务接口注册信息进行解析后,得到业务接口注册操作信息,各自将接口注册到自己的服务实例中,使得各个服务实例的接口一致,实现了动态注册接口。
在一个实施例中,该方法还包括:响应于客户端的接口注销请求,在至少2个服务实例中确定待完成接口注销的目标服务实例;将接口注销请求转发给目标服务实例;通过目标服务实例对接口注销请求进行封装处理,生成业务接口注销信息;通过目标服务实例将业务接口注销信息广播至各个服务实例;通过各个服务实例基于业务接口注销信息进行业务接口注销操作。
其中,接口注销请求是指客户端发送的用于指示集群***注销接口的命令。具体地,响应于客户端的接口注销请求,在至少2个服务实例中确定待完成接口注销的目标服务实例,将接口注销请求转发给目标服务实例,通过目标服务实例对接口注销请求进行封装处理,生成业务接口注销信息,通过目标服务实例将业务接口注销信息广播至各个服务实例,通过各个服务实例基于业务接口注销信息进行业务接口注销操作,通过将接口注销请求对应的操作流程拆分为广播和操作的异步处理,实现了集群中各个服务实例动态注销接口,提高了接口处理的实时性和同步性。在一个具体实施方式中,继续以图2所示的确定待完成接口注册的目标服务实例的过程示意图为例,假设A1为目标服务实例,则将该接口注册请求转发至A1,如图3所示,为接口注册/注销的过程示意图。通过负载均衡对外提供接口服务,客户端调用register注册接口或deregister注销接口,发起动态注册接口或注销接口的操作,接口注册请求或者接口注销请求经过负载均衡后,转发到集群***中的服务实例A1,服务实例A1接收到接口注册请求或者接口注销请求后,对接口注册请求或者接口注销请求进行封装处理,生成业务接口注册信息或者业务接口注销信息,通过服务实例A1中的缓存中间件将业务接口注册信息或者业务接口注销信息广播至服务实例A1、A2和A3,服务实例A1、A2和A3监听到业务接口注册信息或者业务接口注销信息后,均进行业务接口注册操作业务或者接口注销操作。
在一个实施例中,至少2个服务实例中包括已注册业务接口不同的多个服务实例,方法还包括:获取接口同步请求;将接口同步请求转发给多个服务实例;获取多个服务实例已注册业务接口信息;根据多个服务实例已注册业务接口信息,确定多个服务实例的已注册业务接口的并集;确定多个服务实例中各服务实例相对已注册业务接口的并集的差异已注册业务接口;将差异已注册业务接口的信息广播至多个服务实例,以使得多个服务实例分别注册各自的差异已注册业务接口,实现多个服务实例中已注册业务接口的同步。
其中,接口同步请求是指客户端发送的用于指示集群***中的各个服务实例的接口同步的命令。具体地,集群***获取接口同步请求后,将接口同步请求转发给多个服务实例,获取多个服务实例已注册业务接口信息,例如,服务实例A1、A2、A3的已注册接口分别(a,b)、(b)、(a,c),为根据多个服则服务实例的已注册业务接口的并集为(a,b,c),服务实例A1、A2、A3的差异已注册业务接口分别为(c)、(a,c)、(b),将差异已注册业务接口的信息广播至服务实例A1、A2、A3,以使得服务实例A1、A2、A3分别注册各自的差异已注册业务接口,实现服务实例A1、A2、A3中已注册业务接口的同步。使得多个服务实例中已注册业务接口的同步,实现了微服务架构下不中断服务向集群***动态注册、注销或同步api接口的需求,提高了集群***的性能、吞吐量、可用性以及易用性。
如图4所示,在一个实施例中,提出了一种接口请求处理装置,应用于微服务框架的集群***中,所述微服务框架的集群***包括多个客户端和至少2个服务实例,每个服务实例可提供固定的注册接口和注销接口,所述注册接口用于供所述集群***中客户端调用注册新的业务接口,所述注销接口用于供所述集群***中客户端调用注销已有业务接口,所述装置包括:
确定模块402,用于响应于客户端的接口注册请求,在所述至少2个服务实例中确定待完成接口注册的目标服务实例;
转发模块404,用于将所述接口注册请求转发给所述目标服务实例;
封装模块406,用于通过所述目标服务实例对所述接口注册请求进行封装处理,生成业务接口注册信息;
广播模块408,用于通过所述目标服务实例将所述业务接口注册信息广播至各个所述服务实例;
注册模块410,用于通过各个所述服务实例基于所述业务接口注册信息进行业务接口注册操作。
在一个实施例中,确定模块包括:
均衡单元,用于响应于客户端的接口注册请求,执行所述负载均衡脚本,生成处理所述接口注册请求的目标负载标识;
选取单元,用于根据所述目标负载标识,从所述集群***中的多个所述服务实例中选取对应的所述服务实例确定为处理所述接口注册请求的所述目标服务实例。
在一个实施例中,封装模块包括:
提取单元,用于提取所述接口注册请求中的接口操作类型、接口路径及接口动作;
封装单元,用于将所述操作类型、接口路径及接口动作封装为json文本,生成业务接口注册信息。
在一个实施例中,广播模块包括:发布单元,用于将所述业务接口注册信息发布到所述缓存中间件的目标频道,以使各个服务实例在所述目标频道进行监听获取所述业务接口注册信息。
在一个实施例中,注册模块包括:
解析单元,用于通过各个所述服务实例分别对所述业务接口注册信息进行解析处理,得到业务接口注册操作信息;
注册单元,用于通过各个所述服务实例按照所述业务接口注册操作信息进行接口注册操作。
在一个实施例中,该接口请求处理装置还包括:
二次确定模块,用于响应于客户端的接口注销请求,在所述至少2个服务实例中确定待完成接口注销的目标服务实例;
二次转发模块,用于将所述接口注销请求转发给所述目标服务实例;
二次封装模块,用于封装模块,用于通过所述目标服务实例对所述接口注销请求进行封装处理,生成业务接口注销信息;
二次广播模块,用于通过所述目标服务实例将所述业务接口注销信息广播至各个所述服务实例;
注销模块,用于通过各个所述服务实例基于所述业务接口注销信息进行业务接口注销操作。
在一个实施例中,该接口请求处理装置还包括:
第一获取模块,用于获取接口同步请求;
三次转发模块,用于将所述接口同步请求转发给所述多个服务实例;
第二获取模块,用于获取所述多个服务实例已注册业务接口信息;
第二确定模块,用于根据所述多个服务实例已注册业务接口信息,确定所述多个服务实例的已注册业务接口的并集;
第三确定模块,用于确定所述多个服务实例中各服务实例相对所述已注册业务接口的并集的差异已注册业务接口;
同步模块,用于将所述差异已注册业务接口的信息广播至所述多个服务实例,以使得所述多个服务实例分别注册各自的差异已注册业务接口,实现所述多个服务实例中已注册业务接口的同步。
图5示出了一个实施例中微服务框架的集群***的结构框图。该微服务框架的集群***的结构框图具体可以是服务器,所述服务器包括但不限于高性能计算机和高性能计算机集群。如图5所示,该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作***,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现接口请求处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行接口请求处理方法。本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的接口请求处理方法可以实现为一种计算机程序的形式,计算机程序可在如图5所示的计算机设备上运行。计算机设备的存储器中可存储组成接口请求处理装置的各个程序模板。比如,确定模块402,转发模块404,封装模块406,广播模块408,注册模块410。
一种微服务框架的集群***,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述接口请求处理方法中的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述接口请求处理方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来请求相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (7)
1.一种接口请求处理方法,其特征在于,应用于微服务框架的集群***中,所述微服务框架的集群***包括多个客户端和至少2个服务实例、用于发布和订阅频道的缓存中间件,所述缓存中间件包括用于确定同一微服务框架的目标频道,所述集群***中各服务实例预先订阅所述目标频道,每个服务实例可提供固定的注册接口和注销接口,所述注册接口用于供所述集群***中客户端调用注册新的业务接口,所述注销接口用于供所述集群***中客户端调用注销已有业务接口,所述方法包括:
响应于客户端的接口注册请求,在所述至少2个服务实例中确定待完成接口注册的目标服务实例;
将所述接口注册请求转发给所述目标服务实例;
通过所述目标服务实例对所述接口注册请求进行封装处理,生成业务接口注册信息,包括:提取所述接口注册请求中的接口操作类型、接口路径及接口动作;将所述操作类型、接口路径及接口动作封装为json文本,生成业务接口注册信息;
通过所述目标服务实例将所述业务接口注册信息广播至各个所述服务实例,包括:将所述业务接口注册信息发布到所述缓存中间件的目标频道,以使各个服务实例在所述目标频道进行监听获取所述业务接口注册信息;
通过各个所述服务实例基于所述业务接口注册信息进行业务接口注册操作,包括:通过各个所述服务实例分别对所述业务接口注册信息进行解析处理,得到业务接口注册操作信息;通过各个所述服务实例按照所述业务接口注册操作信息进行接口注册操作。
2.如权利要求1所述的接口请求处理方法,其特征在于,所述接口注册请求包括负载均衡脚本;所述响应于客户端的接口注册请求,在所述至少2个服务实例中确定待完成接口注册的目标服务实例的步骤,包括:
响应于客户端的接口注册请求,执行所述负载均衡脚本,生成处理所述接口注册请求的目标负载标识;
根据所述目标负载标识,从所述集群***中的多个所述服务实例中选取对应的所述服务实例确定为处理所述接口注册请求的所述目标服务实例。
3.如权利要求1所述的接口请求处理方法,其特征在于,所述方法还包括:
响应于客户端的接口注销请求,在所述至少2个服务实例中确定待完成接口注销的目标服务实例;
将所述接口注销请求转发给所述目标服务实例;
通过所述目标服务实例对所述接口注销请求进行封装处理,生成业务接口注销信息;
通过所述目标服务实例将所述业务接口注销信息广播至各个所述服务实例;
通过各个所述服务实例基于所述业务接口注销信息进行业务接口注销操作。
4.如权利要求1所述的接口请求处理方法,其特征在于,所述至少2个服务实例中包括已注册业务接口不同的多个服务实例,所述方法还包括:
获取接口同步请求;
将所述接口同步请求转发给所述多个服务实例;
获取所述多个服务实例已注册业务接口信息;
根据所述多个服务实例已注册业务接口信息,确定所述多个服务实例的已注册业务接口的并集;
确定所述多个服务实例中各服务实例相对所述已注册业务接口的并集的差异已注册业务接口;
将所述差异已注册业务接口的信息广播至所述多个服务实例,以使得所述多个服务实例分别注册各自的差异已注册业务接口,实现所述多个服务实例中已注册业务接口的同步。
5.一种接口请求处理装置,其特征在于,应用于微服务框架的集群***中,所述微服务框架的集群***包括多个客户端和至少2个服务实例、用于发布和订阅频道的缓存中间件,所述缓存中间件包括用于确定同一微服务框架的目标频道,所述集群***中各服务实例预先订阅所述目标频道,每个服务实例可提供固定的注册接口和注销接口,所述注册接口用于供所述集群***中客户端调用注册新的业务接口,所述注销接口用于供所述集群***中客户端调用注销已有业务接口,所述装置包括:
确定模块,用于响应于客户端的接口注册请求,在所述至少2个服务实例中确定待完成接口注册的目标服务实例;
转发模块,用于将所述接口注册请求转发给所述目标服务实例;
封装模块,用于通过所述目标服务实例对所述接口注册请求进行封装处理,生成业务接口注册信息,包括:提取所述接口注册请求中的接口操作类型、接口路径及接口动作;将所述操作类型、接口路径及接口动作封装为json文本,生成业务接口注册信息;
广播模块,用于通过所述目标服务实例将所述业务接口注册信息广播至各个所述服务实例,包括:将所述业务接口注册信息发布到所述缓存中间件的目标频道,以使各个服务实例在所述目标频道进行监听获取所述业务接口注册信息;
注册模块,用于通过各个所述服务实例基于所述业务接口注册信息进行业务接口注册操作,包括:通过各个所述服务实例分别对所述业务接口注册信息进行解析处理,得到业务接口注册操作信息;通过各个所述服务实例按照所述业务接口注册操作信息进行接口注册操作。
6.一种微服务框架的集群***,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4任一项所述接口请求处理方法的步骤。
7.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述接口请求处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210394082.7A CN114500655B (zh) | 2022-04-15 | 2022-04-15 | 接口请求处理方法、装置、微服务框架的集群***及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210394082.7A CN114500655B (zh) | 2022-04-15 | 2022-04-15 | 接口请求处理方法、装置、微服务框架的集群***及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114500655A CN114500655A (zh) | 2022-05-13 |
CN114500655B true CN114500655B (zh) | 2022-07-26 |
Family
ID=81489327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210394082.7A Active CN114500655B (zh) | 2022-04-15 | 2022-04-15 | 接口请求处理方法、装置、微服务框架的集群***及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114500655B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116166756B (zh) * | 2023-04-26 | 2023-07-04 | 浪潮通用软件有限公司 | 一种微服务应用数据的共享方法、装置及设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103297266A (zh) * | 2013-05-09 | 2013-09-11 | 国家电网公司 | 一种基于企业集成总线的***接入管理方法 |
CN112199105A (zh) * | 2020-10-15 | 2021-01-08 | 舟山网脉科技有限公司 | 功能组合式软件开发的方法、***、介质及电子设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8589338B2 (en) * | 2008-01-24 | 2013-11-19 | Oracle International Corporation | Service-oriented architecture (SOA) management of data repository |
CN102571550B (zh) * | 2010-12-30 | 2016-05-25 | 北京亿阳信通科技有限公司 | 一种通用的信息交互平台和方法 |
CN103502940B (zh) * | 2011-12-21 | 2017-12-12 | 华为技术有限公司 | 一种分布式***中处理事务的方法、相关设备及*** |
US10433353B2 (en) * | 2015-03-09 | 2019-10-01 | Apple Inc. | Neighbor awareness networking service discovery proxy |
TWI678087B (zh) * | 2018-11-22 | 2019-11-21 | 財團法人工業技術研究院 | 訊息佇列發佈與訂閱之同步方法及其系統 |
CN109800239B (zh) * | 2019-01-15 | 2022-09-06 | 科大国创软件股份有限公司 | 基于Redis的分布式架构数据共享方法 |
CN112311869B (zh) * | 2020-10-28 | 2022-04-05 | 苏州万店掌网络科技有限公司 | 多类型微服务注册中心管理***及方法 |
CN112765182A (zh) * | 2021-01-28 | 2021-05-07 | 江苏视博云信息技术有限公司 | 云服务器集群间的数据同步方法及装置 |
-
2022
- 2022-04-15 CN CN202210394082.7A patent/CN114500655B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103297266A (zh) * | 2013-05-09 | 2013-09-11 | 国家电网公司 | 一种基于企业集成总线的***接入管理方法 |
CN112199105A (zh) * | 2020-10-15 | 2021-01-08 | 舟山网脉科技有限公司 | 功能组合式软件开发的方法、***、介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114500655A (zh) | 2022-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110300050B (zh) | 消息推送方法、装置、计算机设备及存储介质 | |
CN113300985B (zh) | 数据处理方法、装置、设备和存储介质 | |
CN109474701B (zh) | 区块链预言机、物联设备和信息处理方法 | |
CN114500655B (zh) | 接口请求处理方法、装置、微服务框架的集群***及介质 | |
CN110545307B (zh) | 边缘计算平台、调用方法及计算机可读存储介质 | |
CN112953745B (zh) | 服务调用方法、***、计算机设备和存储介质 | |
CN105007309A (zh) | 一种动态数据与静态界面的分离控制***及方法 | |
US20180077590A1 (en) | System and method for programmable native analytics in 5g mobile networks | |
CN108702381A (zh) | 一种消息传输方法及核心网接口设备 | |
CN104519095B (zh) | 一种动态消息推送方法及其***、服务端、客户端 | |
CN111885516A (zh) | 多渠道接入的短信配置方法、装置、计算机设备及存储介质 | |
EP4113933A1 (en) | Microservice invoking method and apparatus, device and medium | |
CN111225070B (zh) | 流量控制方法、装置、***和sdn控制器 | |
CN114040020A (zh) | 跨集群服务调用的方法及*** | |
CN112825524B (zh) | 网络服务节点的确定方法、装置和*** | |
CN111147548A (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
CN111324467A (zh) | 业务服务调用方法、装置、设备和存储介质 | |
CN112235352B (zh) | 一种服务依赖梳理方法和装置 | |
CN105069012A (zh) | 一种文件访问方法及*** | |
CN111861432B (zh) | 虚拟资源信息更新方法及装置、服务器及存储介质 | |
CN112579235A (zh) | 响应数据国际化的方法、转码中心、客户端、设备及介质 | |
CN114143269A (zh) | 一种http请求分流方法、装置、设备及介质 | |
CN111371780B (zh) | 一种报文传输方法、***及装置 | |
CN111953735A (zh) | ***微服务化改造方法、装置、设备及存储介质 | |
US11874847B2 (en) | Method for generating process protocols in a distributed IT infrastructure |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |