CN115134413A - 微服务集群的注册方法、服务请求处理方法及微服务集群 - Google Patents
微服务集群的注册方法、服务请求处理方法及微服务集群 Download PDFInfo
- Publication number
- CN115134413A CN115134413A CN202210526096.XA CN202210526096A CN115134413A CN 115134413 A CN115134413 A CN 115134413A CN 202210526096 A CN202210526096 A CN 202210526096A CN 115134413 A CN115134413 A CN 115134413A
- Authority
- CN
- China
- Prior art keywords
- registration
- service
- node
- information
- micro
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000003672 processing method Methods 0.000 title claims abstract description 27
- 238000003860 storage Methods 0.000 claims description 34
- 238000004891 communication Methods 0.000 claims description 18
- 238000012423 maintenance Methods 0.000 abstract description 8
- 238000002955 isolation Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 21
- 241000412611 Consul Species 0.000 description 17
- 238000012545 processing Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种微服务集群的注册方法、服务请求处理方法及微服务集群。该注册方法包括:根据不同地区信息将注册中心划分为对应的多个空间,接收微服务节点的注册请求,注册请求包括地区信息,根据地区信息,将微服务节点注册在对应的空间内,并在对应的空间内保存微服务节点的注册信息,注册信息包括服务信息。本申请对不同地区进行逻辑隔离,提高了机器的资源利用率,降低了系统复杂度和运维复杂度。
Description
技术领域
本申请涉及微服务技术领域,具体涉及一种微服务集群的注册方法、服务请求处理方法及微服务集群。
背景技术
现有技术中,使用Consul Cluster作为微服务注册中心时,为了迎合同一服务分地区部署的情况,需要为每个地区部署一套独立的Consul Cluster和Zuul。
由于Consul Cluster无数据库且处理逻辑简单,其不存在由于访问过多而压力过大的问题。因此在现有的部署方法中,每个地区部署一套Consul Cluster是对资源的一种浪费。并且现有的部署方法系统复杂度高且运维复杂度高。
现有技术中缺乏一种对不同地区做逻辑隔离,资源利用率高,系统和运维复杂度低的部署方法。
发明内容
为解决上述问题,本申请实施例提供了一种微服务集群的注册方法、服务请求处理方法及微服务集群,旨在克服或者部分克服上述技术问题。
本申请实施例采用下述技术方案:
第一方面,提供了一种微服务集群的注册方法,该注册方法适用于注册中心,该注册中心与微服务节点通信连接,该注册方法包括:
根据不同地区信息将注册中心划分为对应的多个空间;
接收微服务节点的注册请求,其中,注册请求包括地区信息;
根据地区信息,将微服务节点注册在对应的空间内,并在对应的空间内保存微服务节点的注册信息,其中,注册信息包括服务信息。
第二方面,提供了一种服务请求处理方法,该处理方法适用于网关,该网关分别与注册中心和微服务节点通信连接,注册中心实现上述微服务集群的注册方法,该处理方法包括:
接收服务请求,对服务请求进行解析,得到服务请求的地区信息和目标服务信息;
根据地区信息,拉取注册中心对应的空间中保存的微服务节点的注册信息;
确定服务请求中的目标服务信息与注册信息的服务信息是否匹配;
若是,则将所服务请求转发至对应的微服务节点,以使微服务节点的服务信息响应服务请求。
第三方面,提供了一种微服务集群,该微服务集群包括:注册中心、网关、以及微服务节点;其中,注册中心与微服务节点通信连接,网关分别与注册中心和微服务节点通信连接,注册中心实现上述微服务集群的注册方法,网关实现上述服务请求处理方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有微服务注册程序,微服务注册程序被至少一个处理器执行时实现上述微服务集群的注册方法。
第五方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有服务请求处理程序,微服务注册程序被至少一个处理器执行时实现上述服务请求处理方法。
第六方面,本申请实施例还提供了一种微服务系统,该微服务系统包括:注册中心、网关、以及微服务节点;其中,注册中心与微服务节点通信连接,网关分别与注册中心和微服务节点通信连接;
注册中心包括:第一存储器和第一处理器,第一存储器上存储有微服务注册程序,微服务注册程序被第一处理器执行时实现上述微服务集群的注册方法;
网关包括:第二存储器和第二处理器,第二存储器上存储有服务请求处理程序,服务请求处理程序被第二处理器执行时实现上述服务请求处理方法。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
本申请根据地区信息对注册中心进行逻辑隔离,可以对多个地区统一部署一套Consul Cluster,提高了机器的资源利用率,同时降低了系统复杂度和运维复杂度。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出现有技术中微服务集群部署的结构示意图;
图2示出根据本申请的一个实施例的微服务集群的注册方法的流程示意图;
图3示出根据本申请的一个实施例的微服务集群的注册方法的架构示意图;
图4示出根据本申请的一个实施例的服务请求处理方法的流程示意图;
图5示出根据本申请的一个实施例的服务请求处理方法的架构示意图;
图6示出根据本申请的一个实施例的微服务集群的结构示意图;
图7示出根据本申请的一个实施例的微服务集群的工作方法的流程示意图;
图8示出根据本申请的一个实施例的微服务系统的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
首先,对本申请中所涉及到的技术特征进行解释。
微服务,作为一种软件开发技术,是面向服务的体系结构(SOA)架构样式的一种变体。微服务将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务之间采用轻量级的通信机制互相沟通(例如基于HTTP的RESTful API)。每个服务都围绕着具体业务进行构建,并且能够独立地部署到生产环境、类生产环境等。
Consul Cluster,是HashiCorp公司推出的开源产品,用于实现分布式系统的服务发现、服务隔离、服务配置。上述功能中的每一个都可以根据需要单独使用,也可以同时使用。Consul Cluster主推在服务网格中的使用。与其他分布式服务注册与发现的方案相比,Consul Cluster的方案更加“一站式”。其内置了服务注册与发现架构、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,不再需要依赖其他工具。Consul Cluster本身使用go语言开发,具有跨平台、运行高效等特点,方便和Docker配合使用。
Zuul,是Spring Cloud全家桶中的微服务API网关。所有设备或网站的请求都会经过Zuul到达后端的Netflix应用程序。作为一个边界性质的应用程序,Zuul提供了动态路由、监控、弹性负载和安全功能。Zuul底层利用各种filter实现如下功能:(一)认证和安全,识别每个需要认证的资源,拒绝不符合要求的请求;(二)性能监测,在服务边界追踪并统计数据,提供精确的生产视图;(三)动态路由,根据需要将请求动态路由到后端集群;(四)压力测试,逐渐增加对集群的流量以了解其性能;(五)负载卸载,预先为每种类型的请求分配容量,当请求超过容量时自动丢弃;(六)静态资源处理,直接在边界返回某些响应。
其次,对现有技术进行说明。
图1示出了现有技术中微服务集群部署的结构示意图。根据图1所示,现有技术在采用Consul Cluster对微服务集群进行部署时,每个地区需要单独部署一套注册中心(Consul Cluster),在这种分地区的部署方式下,资源极度浪费。由于需要同时运行和维护多套Consul Cluster,服务信息在不同的集群也存在着物理隔离,因此系统的复杂程度高、运维难度大。在现有技术中,当有服务请求到达时,会直接将该服务请求路由至对应的地区,然后路由至该地区对应的服务实例的目标服务实例中,从而对服务请求进行处理和反馈。
针对上述现有技术存在的弊端,本申请的构思在于:对于同一服务,对于多个地区只部署一套Consul Cluster,通过命名空间逻辑隔离不同地区的实例,从而提高了机器的资源利用率,同时降低了系统复杂度和运维复杂度。
图2示出了根据本申请的一个实施例的微服务集群的注册方法的流程示意图,该方法适用于注册中心,该注册中心与微服务节点通信连接。
从图2可以看出,本实施例至少包括步骤S210~步骤S230:
步骤S210:根据不同地区信息将注册中心划分为对应的多个空间。
根据不同地区信息,将注册中心(Consul cluster)划分为多个空间,每个空间对应一个地区。不同地区信息可以但不限于根据省份划分的不同地区信息。每个空间可以根据其对应的地区进行命名,也可以根据其对应的地区分配唯一识别编号。本申请不局限于上述划分方式,只要保证注册中心划分的多个空间与不同地区信息的对应关系即可。
步骤S220:接收微服务节点的注册请求,其中,注册请求包括地区信息。
微服务节点启动后,与注册中心实现通信连接。微服务节点向注册中心发送携带有地区信息的注册请求。注册中心在接收到该注册请求后进行响应。
步骤S230:根据地区信息,将微服务节点注册在对应的空间内,并在对应的空间内保存微服务节点的注册信息,其中,注册信息包括服务信息。
注册中心响应注册请求,根据注册请求中包括的地区信息,将微服务节点注册在对应的空间内。微服务节点被注册后,对应的空间内保存微服务节点的注册信息。注册信息至少包括服务信息(Service),服务信息可以包括微服务节点可实现的功能,例如功能名称、服务实例(Service Instance)等。注册信息还可以但不限于包括地址信息,地址信息可以包括微服务节点的互联网协议地址、端口号、地区信息等。
由图2所示的方法可以看出,本申请根据不同地区信息将注册中心划分为对应的多个空间,接收微服务节点的包括地区信息的注册请求,根据地区信息将微服务节点注册在对应的空间内并在对应的空间内保存微服务节点的注册信息。本申请根据地区信息对注册中心进行逻辑隔离,可以对多个地区统一部署一套Consul Cluster,提高了机器的资源利用率,同时降低了系统复杂度和运维复杂度。
在本申请的一些实施例中,注册中心包括多个本地节点,该注册方法还包括:在多个本地节点中选举出第一注册节点作为主节点;由主节点根据不同地区信息将注册中心内存划分为对应的多个空间;由主节点接收微服务节点的注册请求;根据地区信息,由主节点将微服务节点注册在对应的空间内,并在对应的空间内保存微服务节点的注册信息。
对于注册中心,可以包括多个本地节点(Consul),采用一主多从的节点分布方式。主节点(Leader Consul)为从多个本地节点选举出的第一注册节点,从节点(Follower)为主节点的备份节点。不同地区信息都注册在注册中心的主节点中,通过主节点,在注册中心内存中为不同地区划分不同的命名空间来实现逻辑隔离。主节点将微服务节点注册在对应的逻辑隔离的空间内,并将微服务节点的注册信息同步保存于对应的逻辑隔离的空间内。主节点的选举方式可以但不限于随机选举,或者根据运算速率的排序进行选举。
在本申请的一些实施例中,在多个本地节点中选举出第一注册节点作为主节点的步骤之后,该注册方法还包括:若第一注册节点失效,则在除第一注册节点的本地节点中选举出第二注册节点,将第二注册节点作为主节点。
若第一注册节点失效(比如无响应),则在从节点中选举出第二注册节点,以使第二注册节点作为新的主节点,承担相应作用。第二注册节点的选举方式可以但不限于随机选举,或者根据运算速率的排序进行选举。
在注册中心包括多个本地节点时,依照上述逻辑:在多个本地节点中选举出第一注册节点作为主节点;在第一注册节点失效时,在除第一注册节点的本地注册节点中选举出第二注册节点作为新的主节点;在第二注册节点失效时,在除第一注册节点和第二注册节点的本地注册节点中继续选取主节点;以此类推,以在注册中心中保证一个有效的主节点。
图3示出了本申请的一个实施例的微服务集群的注册方法的架构示意图。从图3可以看出,该架构包括相互通信连接的注册中心和微服务节点。注册中心包括一个主节点和多个从节点。由主节点根据不同地区信息将注册中心内存划分为对应的多个空间。接收微服务节点的包括地区信息的注册请求后,将微服务节点注册在对应的空间,并将包括服务信息的注册信息保存于对应的空间。
图4示出了根据本申请的一个实施例的服务请求处理方法的流程示意图,该方法适用于网关,该网关分别与注册中心和微服务节点通信连接,该注册中心实现上述微服务集群的注册方法。
从图4可以看出,本实施例至少包括步骤S410~步骤S440:
步骤S410:接收服务请求,对服务请求进行解析,得到服务请求的地区信息和目标服务信息。
本实施例的服务请求处理方法以网关(Zuul)为执行主体。当一个服务请求到达网关时,网关对服务请求进行分析,得到其中包括的地区信息和目标服务信息。
步骤S420:根据地区信息,拉取注册中心对应的空间中保存的微服务节点的注册信息。
根据地区信息,在注册中心中确定对应的空间,并将注册中心对应的空间中注册的微服务节点的注册信息拉取至网关。
步骤S430:确定服务请求中的目标服务信息与注册信息的服务信息是否匹配。
网关拉取的微服务节点的注册信息中包括服务信息,网关接收的服务请求中包括目标服务信息。从注册信息中检索其包括的服务信息,确定是否与服务请求中的目标服务信息相匹配。
步骤S440:若是,则将服务请求转发至对应的微服务节点,以使微服务节点的服务信息响应服务请求。
若注册信息中存在与服务请求中的目标服务信息相匹配的服务信息,则将服务请求转发至微服务节点,使微服务节点的服务信息对服务请求作出响应。
由图4所示的方法可以看出,由于微服务集群的注册方法的架构有所变化,对于处理服务请求的过程也有相应的变化,网关的路由方式发生了改变。本申请的服务请求处理方法降低了系统复杂度和运维复杂度。
在本申请的一些实施例中,根据地区信息,拉取注册中心对应的空间中保存的微服务节点的注册信息,包括:根据地区信息,拉取由注册中心的主节点在对应的空间中保存的微服务节点的注册信息。
当注册中心包括多个本地节点时,总保证选举出一个有效的注册节点作为主节点。因此,网关根据地区信息,向注册中心中拉取保存在对应的空间中的微服务节点的注册信息,该微服务节点是由主节点注册的。
在本申请的一些实施例中,将服务请求转发至微服务节点,以使微服务节点响应服务请求的步骤之前,该处理方法还包括:确定服务信息是否满足预设条件;若是,则将服务请求转发至微服务节点,以使微服务节点响应服务请求。
当注册信息中存在与服务请求中的目标服务信息相匹配的服务信息时,进一步对服务信息的可用性进行判定。确定服务信息是否满足预设条件,若满足预设条件则意味着服务信息可用,则将服务请求转发至微服务节点,以使微服务节点响应服务请求。预设条件可以包括但不限于中断频率低于固定值,或者中断时间与持续时间的比值低于固定值等,本申请的预设条件并不以此为限。
图5示出了本申请的一个实施例的微服务集群的服务请求处理方法的架构示意图。从图5可以看出,该架构包括网关、注册中心和微服务节点。网关分别与注册中心和微服务节点通信连接。网关接收前端发送的服务请求,对服务请求进行解析后得到服务请求的地区信息和目标服务信息。根据地区信息,拉取注册中心对应的空间中保存的微服务节点的包括服务信息的注册信息。确定服务请求中的目标服务信息与注册信息的服务信息匹配,进一步确定服务信息可用后,网关将服务请求转发至微服务节点,以使微服务节点的服务信息响应服务请求。
图6示出了本申请的一个实施例的微服务集群的结构示意图。从图6可以看出,该微服务集群包括:注册中心、网关、以及微服务节点。注册中心与微服务节点通信连接,网关分别与注册中心和微服务节点通信连接。注册中心实现上述微服务集群的注册方法,网关实现上述服务请求处理方法。
本申请的微服务集群包括的注册中心、网关以及微服务节点之间,两两分别通信连接。注册中心根据不同地区信息划分不同的空间,将微服务节点注册在对应的空间中,并将微服务节点的注册信息保存在对应的空间中。网关根据前端发送的服务请求拉取对应的空间中保存的注册信息,并对服务请求包括的目标服务信息和注册信息包括的服务信息进行匹配,进一步确定服务信息可用后,将服务请求转发至对应的微服务节点。最终由对应的微服务节点对服务请求进行响应。
图7示出了本申请的一个实施例的微服务集群的工作方法的流程示意图。该微服务集群包括:两两分别通信连接的注册中心、网关、以及微服务节点。注册中心包括一个主节点和多个从节点。
从图7可以看出,本实施例至少包括步骤S7101~步骤S7205。
步骤S7101:注册中心在多个本地节点中选举出第一注册节点。
例如:在多个本地节点中选举出运算速率最快的第一注册节点。
步骤S7102:判断第一注册节点是否失效;若否,则将第一注册节点作为主节点;若是,则在除第一注册节点的本地节点中选举出第二注册节点,将第二注册节点作为主节点。
例如:在第一注册节点有效时,以第一注册节点作为主节点;在第一注册节点失效时,在多个本地节点中选举出运算速率第二快的第二注册节点作为主节点。
步骤S7103:由主节点根据不同地区信息将注册中心内存划分为对应的多个空间。
例如:不同地区信息包括zj(浙江),hb(河北),hn(河南);主节点根据上述三个地区信息将注册中心内存划分为对应的“zj”、“hb”、“hn”空间。
步骤S7104:由主节点接收微服务节点的注册请求,其中,注册请求包括地区信息。
例如:微服务节点1的注册请求中包括zj地区信息,主节点接收包括zj地区信息的注册请求;微服务节点2的注册请求中包括hb地区信息,主节点接收包括hb地区信息的注册请求。
步骤S7105:根据地区信息,由主节点将微服务节点注册在对应的空间内,并在对应的空间内保存微服务节点的注册信息,其中,注册信息包括服务信息。
例如:微服务节点1的注册信息包括ServiceA(服务信息A)和ServiceB(服务信息B),主节点将包括zj地区信息的微服务节点1注册在“zj”空间,并且在“zj”空间保存ServiceA和ServiceB;微服务节点2的注册信息包括ServiceC(微服务信息C)和ServiceD(服务信息D),主节点将包括hb地区信息的微服务节点2注册在“hb”空间,并且在“hb”空间保存ServiceC和ServiceD。
步骤S7201:网关接收服务请求,对服务请求进行解析,得到服务请求的地区信息和目标服务信息。
例如:服务请求为http://zuul.com:8080/qt/zj/ServiceA/test。网关对服务请求进行解析后,确定地区信息为zj,目标服务信息为ServiceA。
步骤S7202:根据地区信息,拉取由注册中心的主节点在对应的空间中保存的微服务节点的注册信息。
例如:根据地址信息zj,网关拉取由注册中心的主节点在“zj”空间保存的微服务节点1的ServiceA和ServiceB服务信息。
步骤S7203:确定服务请求中的目标服务信息与注册信息的服务信息是否匹配。
例如:服务请求中的ServiceA目标服务信息与注册信息的ServiceA服务信息匹配,因此网关确定匹配。
步骤S7204:若是,则确定服务信息是否满足预设条件。
例如:预设条件为中断频率低于1次/天,服务信息的中断频率为0.8次/天;因此,网关确定服务信息满足预设条件。
步骤S7205:若是,则将服务请求转发至对应的微服务节点,以使微服务节点响应服务请求。
例如:网关将服务请求转发至微服务节点1,以使微服务节点1的ServiceA服务信息响应该服务请求。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有微服务注册程序,该微服务注册程序被至少一个处理器执行时实现微服务集群的注册方法,并具体用于执行:
根据不同地区信息将注册中心划分为对应的多个空间;
接收微服务节点的注册请求,其中,注册请求包括地区信息;
根据地区信息,将微服务节点注册在对应的空间内,并在对应的空间内保存微服务节点的注册信息,其中,注册信息包括服务信息。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有服务请求处理程序,该服务请求处理程序被至少一个处理器执行时实现服务请求处理方法,并具体用于执行:
接收服务请求,对服务请求进行解析,得到服务请求的地区信息和目标服务信息;
根据地区信息,拉取注册中心对应的空间中保存的微服务节点的注册信息;
确定服务请求中的目标服务信息与注册信息的服务信息是否匹配;
若是,则将服务请求转发至对应的微服务节点,以使微服务节点的服务信息响应服务请求。
图8示出了根据本申请的一个实施例的微服务系统的结构示意图。从图8可以看出,该微服务系统包括:注册中心、网关、以及微服务节点。注册中心与微服务节点通信连接,网关分别与注册中心和微服务节点通信连接。注册中心包括:第一存储器和第一处理器,第一存储器上存储有微服务注册程序,微服务注册程序被第一处理器执行时实现微服务集群的注册方法。网关包括:第二存储器和第二处理器,第二存储器上存储有服务请求处理程序,服务请求处理程序被第二处理器执行时实现服务请求处理方法。
注册中心包括第一存储器和第一处理器,第一存储器和第一处理器可以但不限于通过程序总线相互通信。第一存储器可以是在注册中心的内部的存储单元(例如硬盘或内存等),第一存储器也可以是在注册中心的外部的存储设备(例如插接式硬盘或智能存储卡等),亦或者第一存储器既包括注册中心内部的存储单元也包括外部的存储设备。第一存储器上除存储有微服务注册程序外,还可以根据不同地区信息被划分为对应的存储空间。第一处理器可以是中央处理器、微处理器或其他数据处理芯片,用于运行第一存储器中存储的微服务注册程序,从而将微服务节点注册在第一存储器对应的空间,并在第一存储器对应的空间中存储微服务节点的注册信息。
具体的,第一存储器存储的微服务注册程序被第一处理器执行时实现微服务集群的注册方法,并用于执行:
根据不同地区信息将注册中心划分为对应的多个空间;
接收微服务节点的注册请求,其中,注册请求包括地区信息;
根据地区信息,将微服务节点注册在对应的空间内,并在对应的空间内保存微服务节点的注册信息,其中,注册信息包括服务信息。
网关包括第二存储器和第二处理器,第二存储器和第二处理器可以但不限于通过程序总线相互通信。第二存储器可以是在网关的内部的存储单元(例如硬盘或内存等),第二存储器也可以是在网关的外部的存储设备(例如插接式硬盘或智能存储卡等),亦或者第二存储器既包括网关内部的存储单元也包括外部的存储设备。第二存储器上存储有服务请求处理程序。第二处理器可以是中央处理器、微处理器或其他数据处理芯片,用于运行第二存储器中存储的服务请求处理程序,从而将服务请求转发至对应的微服务节点,以使微服务节点的服务信息响应服务请求。
具体的,第二存储器存储的服务请求处理程序被第二处理器执行时实现服务请求处理方法,并用于执行:
接收服务请求,对服务请求进行解析,得到服务请求的地区信息和目标服务信息;
根据地区信息,拉取注册中心对应的空间中保存的微服务节点的注册信息;
确定服务请求中的目标服务信息与注册信息的服务信息是否匹配;
若是,则将服务请求转发至对应的微服务节点,以使微服务节点的服务信息响应服务请求。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、系统、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种微服务集群的注册方法,其特征在于,所述注册方法适用于注册中心,所述注册中心与微服务节点通信连接,所述注册方法包括:
根据不同地区信息将所述注册中心划分为对应的多个空间;
接收微服务节点的注册请求,其中,所述注册请求包括地区信息;
根据所述地区信息,将所述微服务节点注册在对应的所述空间内,并在对应的所述空间内保存所述微服务节点的注册信息,其中,所述注册信息包括服务信息。
2.根据权利要求1所述的微服务集群的注册方法,其特征在于,所述注册中心包括多个本地节点,所述注册方法还包括:
在多个所述本地节点中选举出第一注册节点作为主节点;
由所述主节点根据不同地区信息将所述注册中心内存划分为对应的多个空间;
由所述主节点接收微服务节点的注册请求;
根据所述地区信息,由所述主节点将所述微服务节点注册在对应的所述空间内,并在对应的所述空间内保存所述微服务节点的注册信息。
3.根据权利要求2所述的微服务集群的注册方法,其特征在于,在所述在多个所述本地节点中选举出第一注册节点作为主节点的步骤之后,所述注册方法还包括:
若所述第一注册节点失效,则在除所述第一注册节点的本地节点中选举出第二注册节点,将所述第二注册节点作为主节点。
4.一种服务请求处理方法,其特征在于,所述处理方法适用于网关,所述网关分别与注册中心和微服务节点通信连接,所述注册中心实现权利要求1-3任一项所述的微服务集群的注册方法,所述处理方法包括:
接收服务请求,对所述服务请求进行解析,得到所述服务请求的地区信息和目标服务信息;
根据所述地区信息,拉取所述注册中心对应的空间中保存的微服务节点的注册信息;
确定所述服务请求中的目标服务信息与所述注册信息的服务信息是否匹配;
若是,则将所述服务请求转发至对应的所述微服务节点,以使所述微服务节点的服务信息响应所述服务请求。
5.根据权利要求4所述的服务请求处理方法,其特征在于,所述根据所述地区信息,拉取所述注册中心对应的空间中保存的微服务节点的注册信息,包括:
根据所述地区信息,拉取由所述注册中心的主节点在对应的空间中保存的微服务节点的注册信息。
6.根据权利要求4所述的服务请求处理方法,其特征在于,所述将所述服务请求转发至所述微服务节点,以使所述微服务节点响应所述服务请求的步骤之前,所述处理方法还包括:
确定所述服务信息是否满足预设条件;
若是,则将所述服务请求转发至对应的所述微服务节点,以使所述微服务节点响应所述服务请求。
7.一种微服务集群,其特征在于,所述微服务集群包括:注册中心、网关、以及微服务节点;其中,所述注册中心与所述微服务节点通信连接,所述网关分别与所述注册中心和所述微服务节点通信连接,所述注册中心实现权利要求1-3所述的微服务集群的注册方法,所述网关实现权利要求4-6任一项所述的服务请求处理方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有微服务注册程序,所述微服务注册程序被至少一个处理器执行时实现权利要求1-3任一项所述的微服务集群的注册方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有服务请求处理程序,所述服务请求处理程序被至少一个处理器执行时实现权利要求4-6任一项所述的服务请求处理方法。
10.一种微服务系统,其特征在于,所述微服务系统包括:注册中心、网关、以及微服务节点;其中,所述注册中心与所述微服务节点通信连接,所述网关分别与所述注册中心和所述微服务节点通信连接;
所述注册中心包括:第一存储器和第一处理器,所述第一存储器上存储有微服务注册程序,所述微服务注册程序被所述第一处理器执行时实现权利要求1-3任一项所述的微服务集群的注册方法;
所述网关包括:第二存储器和第二处理器,所述第二存储器上存储有服务请求处理程序,所述服务请求处理程序被所述第二处理器执行时实现权利要求4-6任一项所述的服务请求处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210526096.XA CN115134413B (zh) | 2022-05-16 | 2022-05-16 | 微服务集群的注册方法、服务请求处理方法及微服务集群 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210526096.XA CN115134413B (zh) | 2022-05-16 | 2022-05-16 | 微服务集群的注册方法、服务请求处理方法及微服务集群 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115134413A true CN115134413A (zh) | 2022-09-30 |
CN115134413B CN115134413B (zh) | 2024-08-30 |
Family
ID=83377009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210526096.XA Active CN115134413B (zh) | 2022-05-16 | 2022-05-16 | 微服务集群的注册方法、服务请求处理方法及微服务集群 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115134413B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109547570A (zh) * | 2018-12-29 | 2019-03-29 | 深圳云天励飞技术有限公司 | 服务注册方法、装置、注册中心管理设备及存储介质 |
CN109714358A (zh) * | 2019-01-15 | 2019-05-03 | 广东工业大学 | 一种微服务化的注塑mes云平台 |
CN109951528A (zh) * | 2019-02-21 | 2019-06-28 | 中国工商银行股份有限公司 | 支持多部署模式的业务处理方法、装置及系统 |
CN210246800U (zh) * | 2019-10-29 | 2020-04-03 | 苏州菲斯博克智能科技有限公司 | 一种智慧图书馆系统 |
CN111147588A (zh) * | 2019-12-27 | 2020-05-12 | 上海浦东发展银行股份有限公司 | 企业级微服务平台中实现跨域跨中心通信的方法及系统 |
CN111478955A (zh) * | 2020-03-31 | 2020-07-31 | 招商局金融科技有限公司 | 微服务注册方法、系统、装置和计算机可读存储介质 |
CN111597160A (zh) * | 2020-04-21 | 2020-08-28 | 中国人民财产保险股份有限公司 | 分布式数据库系统、分布式数据处理方法和装置 |
CN112311871A (zh) * | 2020-10-29 | 2021-02-02 | 山东健康医疗大数据有限公司 | 一种基于微服务架构的统一应用开发方法及系统 |
CN112671882A (zh) * | 2020-12-18 | 2021-04-16 | 上海安畅网络科技股份有限公司 | 一种基于微服务的同城双活系统和方法 |
WO2021203968A1 (zh) * | 2020-10-28 | 2021-10-14 | 平安科技(深圳)有限公司 | 多注册中心的微服务统一管理方法、装置、设备及介质 |
-
2022
- 2022-05-16 CN CN202210526096.XA patent/CN115134413B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109547570A (zh) * | 2018-12-29 | 2019-03-29 | 深圳云天励飞技术有限公司 | 服务注册方法、装置、注册中心管理设备及存储介质 |
CN109714358A (zh) * | 2019-01-15 | 2019-05-03 | 广东工业大学 | 一种微服务化的注塑mes云平台 |
CN109951528A (zh) * | 2019-02-21 | 2019-06-28 | 中国工商银行股份有限公司 | 支持多部署模式的业务处理方法、装置及系统 |
CN210246800U (zh) * | 2019-10-29 | 2020-04-03 | 苏州菲斯博克智能科技有限公司 | 一种智慧图书馆系统 |
CN111147588A (zh) * | 2019-12-27 | 2020-05-12 | 上海浦东发展银行股份有限公司 | 企业级微服务平台中实现跨域跨中心通信的方法及系统 |
CN111478955A (zh) * | 2020-03-31 | 2020-07-31 | 招商局金融科技有限公司 | 微服务注册方法、系统、装置和计算机可读存储介质 |
CN111597160A (zh) * | 2020-04-21 | 2020-08-28 | 中国人民财产保险股份有限公司 | 分布式数据库系统、分布式数据处理方法和装置 |
WO2021203968A1 (zh) * | 2020-10-28 | 2021-10-14 | 平安科技(深圳)有限公司 | 多注册中心的微服务统一管理方法、装置、设备及介质 |
CN112311871A (zh) * | 2020-10-29 | 2021-02-02 | 山东健康医疗大数据有限公司 | 一种基于微服务架构的统一应用开发方法及系统 |
CN112671882A (zh) * | 2020-12-18 | 2021-04-16 | 上海安畅网络科技股份有限公司 | 一种基于微服务的同城双活系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115134413B (zh) | 2024-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112187545B (zh) | 一种网络切片的部署方法及装置 | |
CN110278284B (zh) | 一种服务调用方法及装置 | |
US20190334781A1 (en) | Network functions virtualization | |
US10757076B2 (en) | Enhanced network processing of virtual node data packets | |
CN109873736A (zh) | 一种微服务监控方法及系统 | |
CN109417492B (zh) | 一种网络功能nf管理方法及nf管理设备 | |
US20220329651A1 (en) | Apparatus for container orchestration in geographically distributed multi-cloud environment and method using the same | |
US11336588B2 (en) | Metadata driven static determination of controller availability | |
JP7003876B2 (ja) | 通信システム及び通信方法 | |
CN112953982B (zh) | 一种服务处理的方法、服务配置的方法以及相关装置 | |
WO2023197874A1 (zh) | 一种应用访问方法、装置、设备及介质 | |
US11228490B1 (en) | Storage management for configuration discovery data | |
CN111913784A (zh) | 任务调度方法及装置、网元、存储介质 | |
US20240250918A1 (en) | Node for running container group, and container group management system and method | |
WO2019001140A1 (zh) | 一种管理vnf实例化的方法和设备 | |
CN110297867A (zh) | 基于国产cpu和分布式容器集群的数据库集群运行方法及系统 | |
US11947534B2 (en) | Connection pools for parallel processing applications accessing distributed databases | |
CN110365743B (zh) | 一种基于Zookeeper实现的支持多种可自定义负载算法的负载均衡器实现方法 | |
WO2017169471A1 (ja) | 処理システムおよび処理方法 | |
CN115134413B (zh) | 微服务集群的注册方法、服务请求处理方法及微服务集群 | |
CN112583740B (zh) | 网络通信方法及装置 | |
US10771539B2 (en) | Systems and methods for cross-cluster service provision | |
US9548940B2 (en) | Master election among resource managers | |
KR101681651B1 (ko) | 데이터베이스 관리 시스템 및 방법 | |
WO2023030218A1 (zh) | 网络业务部署方法、nfvo以及nfv系统 |
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 |