CN114650317A - 一种微服务系统以及微服务注册、发现和保活方法 - Google Patents
一种微服务系统以及微服务注册、发现和保活方法 Download PDFInfo
- Publication number
- CN114650317A CN114650317A CN202011479245.9A CN202011479245A CN114650317A CN 114650317 A CN114650317 A CN 114650317A CN 202011479245 A CN202011479245 A CN 202011479245A CN 114650317 A CN114650317 A CN 114650317A
- Authority
- CN
- China
- Prior art keywords
- service
- registry
- target
- request
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 138
- 238000011217 control strategy Methods 0.000 claims abstract description 100
- 238000006243 chemical reaction Methods 0.000 claims abstract description 15
- 238000012423 maintenance Methods 0.000 claims abstract description 12
- 238000001914 filtration Methods 0.000 claims abstract description 11
- 239000003795 chemical substances by application Substances 0.000 claims description 342
- 230000008569 process Effects 0.000 claims description 53
- 238000001514 detection method Methods 0.000 claims description 51
- 230000004044 response Effects 0.000 claims description 44
- 238000012545 processing Methods 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 21
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 19
- 230000003993 interaction Effects 0.000 description 16
- 230000009286 beneficial effect Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000002699 waste material Substances 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/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
Landscapes
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种微服务系统以及微服务注册、发现和保活方法,其中,微服务系统包括:微服务、注册中心、控制器以及代理模块,代理模块包括与微服务连接的服务侧代理以及与注册中心连接的注册中心侧代理;控制器包括:策略维护模块,用于向服务侧代理下发第一预设控制策略,并向注册中心侧代理下发第二预设控制策略;且代理模块中的每一个代理分别包括:策略过滤单元和协议转换单元,策略过滤单元基于对应的预设控制策略,对发出或接收的消息进行过滤,以将该消息转发至与该预设控制策略匹配的消息接收者;协议转换模块,用于将接收到的消息转换成消息接收者可以理解的数据格式。本发明实施例能够提升微服务系统的可靠性和稳定性。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种微服务系统、微服务注册方法、微服务发现方法、微服务保活方法以及相关设备。
背景技术
在微服务系统中,不同服务之间采用远程通信的方式互相调用,这样,服务消费者在访问其他服务提供者之前,需要知道服务提供者的地址和端口等信息。
随着系统规模的扩大和技术迭代,微服务系统中往往存在多种微服务框架(即异构微服务框架),且不同的微服务框架之间不能直接通信。为了解决异构微服务框架间服务互通的问题,目前主流的解决方案为:增设一个集中化的统一注册中心,通过该统一注册中心接收不同微服务框架内的微服务发送的注册信息;并按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;以使每个注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;进而使本框架的微服务基于该服务列表调用本框架的其他微服务或者其他框架的微服务。
但是,当服务集群规模非常大时,统一注册中心需要存储大量微服务的地址,且统一注册中心需要负责将各个微服务框架内的微服务分别注册到每个微服务框架内的注册中心,从而使得该统一注册中心存在存储、推送压力过大,将造成微服务系统的稳定性等性能较差问题。
发明内容
本发明实施例提供一种微服务系统、微服务注册方法、微服务发现方法、微服务保活方法以及相关设备,能够提升微服务系统的性能。
为解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种微服务系统,包括:
N个微服务,所述N为大于1的整数;
M个注册中心,所述M为大于1的整数;
控制器;以及,
与所述控制器连接的代理模块,所述代理模块包括与所述N个微服务连接的服务侧代理以及与所述M个注册中心连接的注册中心侧代理,且所述服务侧代理与所述注册中心侧代理分别连接;
其中,所述控制器包括:策略维护模块,所述策略维护模块用于向所述服务侧代理下发第一预设控制策略,并向所述注册中心侧代理下发第二预设控制策略;
所述服务侧代理包括:服务侧策略过滤单元和服务侧协议转换单元,所述服务侧策略过滤单元基于所述第一预设控制策略,对发出或接收的消息进行过滤,以将所述发出或接收的消息转发至与所述第一预设控制策略匹配的消息接收者;所述服务侧协议转换模块,用于将接收到的消息转换成消息接收者可以理解的数据格式;
所述注册中心侧代理包括:注册中心侧策略过滤单元和注册中心侧协议转换单元,所述注册中心侧策略过滤单元基于所述第二预设控制策略,对发出或接收的消息进行过滤,以将所述发出或接收的消息转发至与所述第二预设控制策略匹配的消息接收者;所述注册中心侧协议转换模块,用于将接收到的消息转换成消息接收者可以理解的数据格式。
第二方面,本发明实施例还提供了一种微服务注册方法,所述方法包括:
目标微服务发出注册请求;
服务侧代理劫持所述注册请求,并基于第一预设控制策略,确定所述注册请求的目标注册中心,以及将所述注册请求转化为所述目标注册中心对应的协议数据;
所述服务侧代理通过注册中心侧代理将所述注册请求发送至所述目标注册中心。
第三方面,本发明实施例还提供了一种微服务发现方法,所述方法包括:
第一微服务发出服务发现请求;
服务侧代理劫持所述服务发现请求,并基于第一预设控制策略,确定所述服务发现请求对应的目标注册中心,并将所述服务发现请求转化为所述目标注册中心对应的协议数据;
所述服务侧代理将所述服务发现请求发送至注册中心侧代理,以通过所述注册中心侧代理将所述服务发现请求发送至所述目标注册中心;
所述目标注册中心响应于所述服务发现请求返回服务列表,且所述服务列表通过所述注册中心侧代理和所述服务侧代理,发送至所述第一微服务。
第四方面,本发明实施例还提供了一种微服务保活方法,所述方法包括:
注册中心侧代理劫持目标注册中心向服务侧代理发送的状态检测请求,并将所述状态检测请求转化为所述服务侧代理对应的协议数据后,发送至所述服务侧代理;
在所述状态检测请求符合第一预设控制策略的情况下,所述服务侧代理基于所述状态检测请求,检测目标微服务的工作状态,并通过所述注册中心侧代理向所述目标注册中心反馈所述目标微服务的工作状态;
或者,
所述服务侧代理基于第一预设控制策略主动向所述目标注册中心发送所述目标注册中心能够理解的服务保活请求;
所述注册中心侧代理劫持所述服务保活请求,并在所述服务保活请求符合第二预设控制策略的情况下,将所述服务保活请求发送至所述目标注册中心。
第五方面,本发明实施例还提供了一种微服务注册装置,包括:
第一发送模块,用于通过目标微服务发出注册请求;
第一数据处理模块,用于通过服务侧代理劫持所述注册请求,并基于第一预设控制策略,确定所述注册请求的目标注册中心,以及将所述注册请求转化为所述目标注册中心对应的协议数据;
第二发送模块,用于通过注册中心侧代理将所述注册请求发送至所述目标注册中心。
第六方面,本发明实施例还提供了一种微服务发现装置,包括:
第三发送模块,用于通过第一微服务发出服务发现请求;
第二数据处理模块,用于通过服务侧代理劫持所述服务发现请求,并基于第一预设控制策略,确定所述服务发现请求对应的目标注册中心,并将所述服务发现请求转化为所述目标注册中心对应的协议数据;
第四发送模块,用于通过所述服务侧代理将所述服务发现请求发送至注册中心侧代理,以通过所述注册中心侧代理将所述服务发现请求发送至所述目标注册中心;
第五发送模块,用于通过所述目标注册中心响应于所述服务发现请求返回服务列表,且所述服务列表通过所述注册中心侧代理和所述服务侧代理,发送至所述第一微服务。
第七方面,本发明实施例还提供了一种微服务保活装置,所述微服务保活装置包括:第三数据处理模块和检测模块,和/或,所述微服务保活装置包括:第六发送模块和第四数据处理模块;
所述第三数据处理模块,用于通过注册中心侧代理劫持目标注册中心向服务侧代理发送的状态检测请求,并将所述状态检测请求转化为所述服务侧代理对应的协议数据后,发送至所述服务侧代理;
所述检测模块,用于在所述状态检测请求符合第一预设控制策略的情况下,使所述服务侧代理基于所述状态检测请求,检测目标微服务的工作状态,并通过所述注册中心侧代理向所述目标注册中心反馈所述目标微服务的工作状态;
所述第六发送模块,用于通过所述服务侧代理基于第一预设控制策略主动向所述目标注册中心发送所述目标注册中心能够理解的服务保活请求;
所述第四数据处理模块,用于通过所述注册中心侧代理劫持所述服务保活请求,并在所述服务保活请求符合第二预设控制策略的情况下,将所述服务保活请求发送至所述目标注册中心。
第八方面,本发明实施例还提供了一种微服务系统,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第二方面所述的服务注册方法中的步骤,或者,所述计算机程序被所述处理器执行时实现如第三方面所述的服务发现方法中的步骤,或者,所述计算机程序被所述处理器执行时实现如第四方面所述的服务保活方法中的步骤。
第九方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被所述处理器执行时实现如第二方面所述的服务注册方法中的步骤,或者,所述计算机程序被所述处理器执行时实现如第三方面所述的服务发现方法中的步骤,或者,所述计算机程序被所述处理器执行时实现如第四方面所述的服务保活方法中的步骤。
本发明实施例中,在微服务系统中设置N个微服务、M个注册中心、控制器、与微服务对应连接的服务侧代理以及与注册中心对应连接的注册中心侧代理,以通过控制中心向服务侧代理下发第一预设控制策略,并向注册中心侧代理下发第二预设控制策略。这样,在微服务注册、发现或者调用等流程中,能够使各个服务侧代理能够基于第一预设控制策略劫持对应的微服务发出的消息,并查找到该消息对应的消息接收者,从而将该消息转化成消息接收者(微服务或者注册中心)可以理解的数据格式后发送到该消息接收者;另一侧的注册中心侧代理则能够基于第二预设控制策略劫持对应的注册中心接收的消息,并在该消息符合第二预设控制策略的情况下,才将该消息发送到对应的注册中心。这样,无需设置统一注册中心,而是通过代理模块实现确定消息接收者以及负责协议数据转化功能,从而能够实现将微服务发出的消息发送到指定的注册中心,或者使微服务仅接收指定注册中心发出的消息,控制消息在网络中的传输、存储的数量,降低对设备的性能要求,进而提升所述微服务系统的可靠性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种微服务系统的结构图;
图2是本发明实施例提供的一种微服务系统中注册中心的结构图;
图3是本发明实施例提供的一种微服务系统中服务侧代理或注册中心侧代理的结构图;
图4a是本发明实施例提供的一种微服务系统在第一种应用场景下的数据交互示意图;
图4b是本发明实施例提供的一种微服务系统在第二种应用场景下的数据交互示意图;
图4c是本发明实施例提供的一种微服务系统在第三种应用场景下的数据交互示意图;
图5是本发明实施例提供的一种微服务注册方法的流程图;
图6是本发明实施例提供的一种微服务发现方法的流程图;
图7是本发明实施例提供的一种微服务保活方法的流程图;
图8是本发明实施例提供的一种微服务注册装置的结构图;
图9是本发明实施例提供的一种微服务发现装置的结构图;
图10a是本发明实施例提供的一种微服务保活装置的结构图之一;
图10b是本发明实施例提供的一种微服务保活装置的结构图之二;
图11是本发明实施例提供的一种微服务系统的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
微服务架构下,服务的粒度被拆分的非常细,意味着微服务系统中有更多的独立服务,服务之间通过远程通信来交互。每个微服务(简称“服务”)可以独立的开发、部署、升级、扩展和重启,而不影响最终的用户体验,从而得到越来越广泛的应用。
在应用中,如果一个微服务系统中只有少量服务或服务部署的频率较低,则可以通过硬编码或预配置文件的方式展示所有的服务地址。但面对微服务系统中包括大量的微服务和对微服务进行频繁的上线部署行为,并且还需要根据负载情况对微服务数量等进行弹性伸缩控制,因此微服务的IP地址发生变化是一种常态,所以需要提供一种机制,让服务消费者在服务提供者的IP地址发生变化时能够及时获得最新的微服务信息。
在相关技术中,采用以下过程来实现让服务消费者在服务提供者的IP地址发生变化时能够及时获得最新的微服务信息:
步骤一,服务提供者在服务启动时,将服务名称、IP地址、访问端口以及其他服务元数据信息注册到注册中心;
步骤二,注册中心与服务提供者无法维持心跳探测时,将服务从注册中心剔除;
步骤三,服务消费者从注册中心获取服务提供者的最新信息,以基于该最新信息调用服务提供者。
但是,随着异构微服务框架以及超大规模微服务集群的出现,在一个微服务系统中往往存在多种微服务框架,每一个微服务框架对应一个注册中心和至少1个微服务,且不同的微服务框架可以配置为不同的网络制式或者不同的数据协议等,从而使某一微服务不能够直接调用另一微服务框架内的微服务。为了能够实现异构微服务框架间服务互通,相关技术中往往在微服务系统中增设一个统一注册中心,以通过该统一注册中心集中维护各个微服务框架的微服务的注册过程,即通过以下过程实现微服务注册和微服务调用:
第一步,统一注册中心接收不同微服务框架的微服务分别发送的注册信息;
第二步,由统一注册中心按照预先存储的,不同微服务框架之间的信息转换方法,将所述注册信息分别转换成每个微服务框架分别能够理解的数据格式后,将转换后的注册信息分别发送到对应的注册中心,以使每一个微服务框架的注册中心分别对该注册信息进行注册,并在服务列表中更新微服务的注册信息;
第三步,每个微服务框架的注册中心在接收本微服务框架的微服务发送的订阅请求时,直接向本框架的微服务发送服务列表;
第四步,本微服务框架的微服务根据接收到的所述服务列表调用本微服务框架的其他微服务或者其他微服务框架的微服务。
例如:服务B上线时,将该服务B的地址,URL接口以及数据格式等信息上报至统一注册中心,以在该注册中心进行注册,然后,当服务A需要调用服务B时,服务A通过统一注册中心查找服务B的地址和接口等信息,从而到该地址和接口去调用服务B。
由上述过程可知,在微服务框架数量较多的应用场景下,统一注册中心需要维护每一个微服务框架中的服务列表,且需要预先存储每一个微服务框架的数据格式等信息,以准确的将注册信息转化为每一个微服务框架能够识别的数据格式。这样,当微服务系统中的微服务更新频繁或者跨微服务框架调用频繁等情况下,统一注册中心的数据处理量和数据存储量大,一般的统一注册中心难以满足需求,且在统一注册中心同时执行多个任务时,可能超出同一注册中心的处理能力,从而容易造成时延或者错误等,由此可知,相关技术中的微服务系统的可靠性低。
本实施方式中,通过在微服务系统中增加控制器和代理,以通过该控制器对代理下发控制策略,并通过代理劫持服务(包括服务提供者和服务消费者)与注册中心之间的数据流量,并对接触的数据流量进行过滤,即仅将劫持的消息发送到对应的消息接收者,从而减少不必要的服务注册,以及减少不必要的发布流量;另外,还通过消息发送者侧的代理实现数据格式转换,以将消息转化为消息接收者能够理解的数据格式,从而避免了在统一注册中心集中对每一个服务的消息进行数据格式转换,使得统一注册中心的存储和推送压力大,而造成微服务系统的可靠性低的问题。
请参阅图1,是本发明实施例提供的一种微服务系统的结构图,如图1所述,该微服务系统包括:N个微服务11、M个注册中心12、控制器13以及与控制器13连接的代理模块14,所述N为大于1的整数,所述M为大于1的整数。
代理模块14包括与所述N个微服务11连接的服务侧代理141以及与所述M个注册中心12连接的注册中心侧代理142,且所述服务侧代理141与所述注册中心侧代理142分别连接。
其中,如图2所示,控制器13包括:策略维护模块131,策略维护模块131用于向所述服务侧代理141下发第一预设控制策略,并向所述注册中心侧代理142下发第二预设控制策略。
在实施中,上述第一预设控制策略可以包括与本服务侧代理连接的微服务11的数据格式或者数据协议,以及该微服务11关联的注册中心12等,这样,当该微服务11上线时,仅在关联的注册中心12中进行注册即可,而无需在每一个注册中心12进行注册,且在其他微服务11调用本微服务11的过程中,仅需从该关联的注册中心12查找注册信息即可,这样,可以减少不必要的服务注册和服务发布等,以减少资源浪费。
相应的,上述第二预设控制策略可以包括本注册中心侧代理142连接的注册中心12的能力信息,例如:注册中心12可以接受服务注册的数量或者范围(包括微服务的地址范围和协议范围中的至少一种)等等,这样,通过注册中心侧代理142可以使注册中心12可根据自己的能力接收服务注册和服务发布的范围。
在实施中,服务侧代理141与注册中心侧代理142的结构相同,如图3所示,每一个代理包括策略过滤单元15和协议转换单元16,需要说明的是,如图3所示实施例中仅以服务侧代理141为例进行举例说明,在实施中,注册中心侧代理142,同样可以包括策略过滤单元15和协议转换单元16,在此不作具体限定。
具体的,所述服务侧代理141包括:服务侧策略过滤单元和服务侧协议转换单元,所述服务侧策略过滤单元基于所述第一预设控制策略,对发出或接收的消息进行过滤,以将所述发出或接收的消息转发至与所述第一预设控制策略匹配的消息接收者;所述服务侧协议转换模块,用于将接收到的消息转换成消息接收者可以理解的数据格式。
另外,所述注册中心侧代理包括:注册中心侧策略过滤单元和注册中心侧协议转换单元,所述注册中心侧策略过滤单元基于所述第二预设控制策略,对发出或接收的消息进行过滤,以将所述发出或接收的消息转发至与所述第二预设控制策略匹配的消息接收者;所述注册中心侧协议转换模块,用于将接收到的消息转换成消息接收者可以理解的数据格式。
在实施中,消息发送者可以是微服务11、注册中心12以及控制器13中的任一个,消息接收者可以是微服务11、注册中心12以及控制器13中的另一个。例如:在消息发送者是目标微服务11,且消息接收者是注册中心12的情况下,消息发送者侧的代理(即服务侧代理141)用于劫持该目标微服务11发出的消息,并根据第一预设控制策略,从M个注册中心12中筛选出目标消息接收者(即目标注册中心12),然后将该消息转化为目标注册中心12能够理解的数据格式后,将该消息发送至目标注册中心12,此时目标注册中心侧的代理(即注册中心代理142)用于劫持该目标注册中心12接收的消息,并基于第二预设控制策略判断该消息是否满足目标注册中心12的处理条件(例如:该消息的数据格式是否与目标注册中心12匹配,目标注册中心12是否有足够的容量处理该消息等),并在该消息满足目标注册中心12的处理条件的情况下,向该目标注册中心12发送该消息。当然,在实施中消息发送者是目标注册中心12,且消息接收者是微服务11,此时,消息发送者侧的代理与消息接收者侧的代理之间的数据交互过程,与上述在消息发送者是目标微服务11,且消息接收者是注册中心12的情况下的,消息发送者侧的代理与消息接收者侧的代理之间的数据交互过程相似,在此不再赘述。
再例如:在消息发送者是控制器13,且消息接收者是微服务11的情况下,仅消息接收者侧有代理,此时,服务侧代理用于劫持发送至微服务11的消息,并根据第一预设控制策略,验证向微服务11发送消息的控制器13是否为合法的消息发送者,并在得出控制器13为合法的消息发送者的情况下,将该消息转化为目标微服务11能够理解的数据格式,然后,将该消息发送至目标微服务11。
当然,在实施中消息发送者是注册中心12或微服务11,且消息接收者是控制器13,此时,消息发送者侧的代理与控制器13之间的数据交互过程,与上述在消息发送者是控制器13,且消息接收者是微服务11的情况下的,控制器13与消息接收者侧的代理之间的数据交互过程相对应,即由消息发送者侧的代理劫持消息发送者发出的消息,并负责将该消息转化为控制器13能够识别的数据格式后,将该消息发送给控制器13,在此不再赘述。
可选的,所述服务侧代理的数量为N个,所述N个服务侧代理与所述N个微服务对应连接,所述注册中心侧代理的数量为M个,所述M个注册中心侧代理与所述M个注册中心对应连接;
其中,由目标服务侧代理存储和执行该目标微服务的控制策略,目标注册中心侧代理存储和执行目标注册中心的控制策略,所述目标服务侧代理与所述目标微服务对应连接,所述目标注册中心侧代理与所述目标注册中心对务侧代理与应连接,所述N个服务侧代理包括所述目标服务侧代理,所述M个注册中心侧代理包括所述目标注册中心侧代理,所述目标微服务为所述N个微服务中与所述目标服务侧代理对应连接的一个,所述目标注册中心为所述M个注册中心中与所述目标注册中心侧代理对应连接的一个。
本实施方式中,服务侧代理与微服务一一对应连接,且注册中心侧代理与注册中心一一对应连接,这样,可以使不同的微服务以及不同的注册中心的代理有明确的划分,从而使每一个代理仅需存储并执行其对应连接的一个微服务或者一个注册中心的策略即可,从而减轻了单个代理的工作压力,从而能够提升代理的可靠性和稳定性。
可选的,如图2所示,所述控制器13还包括:注册中心维护模块132,用于维护所述M个注册中心12对应的注册中心列表和所述M个注册中心12的状态信息。
其中,上述注册中心维护模块132用于维护所述M个注册中心12对应的注册中心列表和所述M个注册中心12的状态信息,具体可以理解为:在注册中心12上线时,根据上线的注册中心12的信息更新注册中心维护模块132中的注册中心列表,以使该注册中心列表与实际在线的注册中心12相匹配;另外,在注册中心12所关联的微服务11有增减变化时(例如:注册中心所在的微服务框架中的微服务有更新时),还可以维护注册中心12的服务列表,并通过消息推送或者通知消息的方式,告知需要访问该服务列表的微服务11。
例如:周期性的向需要访问该服务列表的微服务送该通知消息;或者在获取到注册中心的服务列表有更新的情况下,立即以消息推送的方式告知需要访问该服务列表的微服务等。
这样,微服务11在接收到消息推送或者通知消息的情况下,能够基于该消息推送或者通知消息,从注册中心12获取最新的服务列表。
当然,在具体实施中,也可以在注册中心的服务列表有更新时,由该注册中心向对应的微服务发送更新通知等方式,以使微服务获知注册中心的服务列表有更新。
进一步的,在第一注册中心的服务列表或状态有更新的情况下,所述注册中心维护模块还基于第三预设控制策略以消息推送的方式或者通知消息的方式通知与所述第一注册中心关联的第一微服务,其中,所述M个注册中心包括所述第一注册中心,所述N个微服务包括所述第一微服务。
其中,上述第三预设控制策略可以是控制器预先配置的与该第一注册中心对应的控制策略,控制器基于该第三预设控制策略从N个微服务中筛选出与第一注册中心关联的第一微服务,并按照该第三预设控制策略指定的方式通知该第一微服务,上述第三预设控制策略指定的方式,可以是:周期性的进行消息推送或发送通知消息的方式;当然,上述第三预设控制策略指定的方式,还可以是在获知第一注册中心的服务列表有更新时,立即进行消息推送或发送通知消息的方式。
本实施方式中,通过在第一注册中心的服务列表或状态有更新时,由控制器基于第三预设控制策略通知第一微服务,以使第一微服务获取其关注的第一注册中心有更新。这样,第一微服务在接收到消息推送或者通知消息的情况下,能够基于该消息推送或者通知消息,从第一注册中心获取最新的服务列表。
可选的,代理模块14中的每一个代理均包括保活模块。
在实际应用中,微服务每间隔预设时间没有动态的情况下,可能进入宕机状态,本实施方式中,可以利用上述保活模块防止微服务进入宕机状态,即维持微服务的正常运行状态,本实施方式中的保活模块,可以每间隔一定时间,发起一次微服务保活流程,以刺激对应的微服务和注册中心,从而实现微服务保活的功能。
具体的,所述服务侧代理141还包括:服务侧保活模块17,用于基于所述第一预设控制策略,主动发起服务保活流程;
和/或,
所述注册中心侧代理142还包括:注册中心侧保活模块,用于接收注册中心发送的状态检测请求,以基于所述第二预设控制策略,将所述状态检测请求发送至对应的微服务。
需要说明的是,如图3所示实施例中,仅以服务侧代理141为例进行举例说明,在实施中,注册中心侧代理142的结构可以参照如图3所示服务侧代理141的结构,在此不再赘述。
其中,所述服务侧保活模块17,用于基于所述第一预设控制策略,主动发起服务保活流程,可以理解为:服务侧代理141(例如:服务提供者对应的服务侧代理)中的服务侧保活模块17基于所述第一预设控制策略,确定向哪个注册中心12发送服务保活请求,并将该服务保活请求转化为确定出的注册中心12能够理解的数据格式后,将该服务保活请求发送至与确定出的注册中心12对应的注册中心侧代理142;当注册中心侧代理142接收到该服务保活请求之后,对该服务保活请求进行鉴权,即验证该服务保活请求是否符合第二预设控制策略,在其符合第二预设控制策略的情况下,将该服务保活请求发送至注册中心12,进而使该目标注册中心12与微服务11之间保持正常的数据交互状态,即实现微服务保活流程。
另外,上述注册中心侧保活模块,用于接收注册中心发送的状态检测请求,以基于所述第二预设控制策略,将所述状态检测请求发送至对应的微服务,可以理解为:由注册中心发起服务探测流程,以发出状态检测请求,注册中心侧代理劫持该状态检测请求,并基于第二预设控制策略,确定向那个或者哪些微服务11发送状态检测请求,并将该状态检测请求转化为确定出的微服务11能够理解的数据格式后,将该服务保活请求发送至与确定出的微服务11对应的服务侧代理141;当服务侧代理141接收到该状态检测请求之后,对该服务保活请求进行鉴权,即验证该状态检测请求是否符合第一预设控制策略,在其符合第一预设控制策略的情况下,将该状态检测请求发送至服务侧代理141,以对微服务11对接收到的服务检测请求进行响应,即返回对应微服务的服务状态,以此实现微服务保活流程。
在实施中,可以从上述由服务提供者侧代理主动发起服务保活流程和由注册中心发起服务探测流程这两种方式中,任选一种或者同时执行两种,以作为实现微服务保活的具体实施方式,在此不作具体限定。
本发明实施例提供的微服务系统中,增加了控制器和代理模块,以通过代理模块实现不同协议数据的转换,以及基于控制器配置的控制策略,使消息的发起侧代理负责筛选服务目标,即确定所发起的消息要发送给哪些消息接收者;以及使消息的接收侧代理负责鉴权、认证、过滤消息,即接收侧代理需要认证接收到的请求是不是本消息接收者愿意服务的请求消息等,从而减少系统中消息的交互、数据的存储等,从而能够提升微服务系统的稳定性和可靠性。
下面以如图4a至如图4c所示应用场景的数据交互示意图为例,对本发明实施例提供的微服务系统的工作过程进行举例说明:
如图4a所示,本发明实施例提供的微服务系统的注册流程可以包括以下步骤:
步骤401a、注册中心上线之后,向控制器发送上线信息报告。
其中,注册中心通过上线信息报告向控制器报告自己的信息,例如:地址、端口、协议、容量等等。
步骤402a、注册中心侧代理劫持注册中心的上线信息报告,并将其转化为控制器可以理解的数据格式后,发送至控制器。
步骤403a、控制器基于该上线信息报告维护注册中心的信息,并针对注册中心的上线信息报告,返回响应。
其中,控制器基于该上线信息报告维护注册中心的信息可以理解为:控制器基于该上线信息报告维护注册中心列表。
步骤404a、注册中心侧代理劫持控制器返回的响应,将其转换为注册中心可以理解的数据格式后,发送至注册中心。
步骤405a、控制器下发控制策略至注册中心侧代理。
本实施方式中,本步骤可以由注册中心上线的情况下触发,当然,在控制策略更新等情况下,也可以触发上述控制器下发控制策略至注册中心侧代理的步骤,在此不作具体限定。
在实施中,注册中心侧代理接收控制器下发的控制策略后,由该代理负责执行控制策略。在实施中,上述控制策略包括但不限于:可以接受服务注册的数量、范围(地址范围、协议范围)等等。
步骤406a、注册中心侧代理针对下发的控制策略,向控制器返回响应。
步骤407a、服务(包括服务消费者和服务提供者)侧代理向控制器请求注册中心信息。
步骤408a、控制器返回注册中心列表至服务侧代理。
步骤409a、控制器向服务(包括服务消费者和服务提供者)下发控制策略至服务侧代理。
其中,服务侧代理接收控制器下发的控制策略后,由该代理负责执行控制策略。在实施中,上述控制策略包括但不限于:服务注册策略(例如:全部注册、仅注册同区域注册中心、仅注册某微服务架构的注册中心等)、服务发现策略(例如:获取所有注册中心上的服务列表、仅获取同区域注册中心上的服务列表、仅获取某微服务架构的注册中心上的服务列表)等。
步骤410a、服务侧代理针对下发的控制策略,向控制器返回响应。
步骤411a、服务提供者发起服务注册请求。
步骤412a、服务侧代理基于控制器预先下发的控制策略,选择注册中心,将注册请求转换为注册中心可以理解的数据格式候,向该注册中心发送服务注册请求。
本步骤中,服务提供者无需向每一个注册中心进行注册,而是仅向符合控制策略的注册中心注册。
步骤413a、注册中心侧代理基于控制器预先下发的控制策略,过滤注册中心接收的请求,将满足策略的请求转发给注册中心。
本步骤中,由注册中心侧代理对向注册中心发送的服务注册请求进行过滤,以仅将符合预设控制策略的请求发送给注册中心,从而避免将无效或者不必要的请求发送给注册中心。
例如:假设注册中心预先配置的控制策略为:仅支持协议A的服务注册请求,若该注册中心的代理接收到的是协议B的服务注册请求,则不将该协议B的服务注册请求发送给注册中心,从而避免该注册中心对不符合控制策略的请求进行响应。
步骤414a、注册中心针对服务注册请求,返回响应。
本步骤中,上述服务注册请求的响应消息可以通过注册中心侧代理和服务侧代理,向服务提供者返回。
步骤415a、注册中心侧代理将注册中心返回的响应透传至服务侧(服务提供者)代理。
本步骤中,具体表示:注册中心侧代理劫持注册中心返回的响应消息,并向微服务发送该响应消息,且在微服务侧,可以由服务侧代理劫持发送给微服务的上述响应消息。
步骤416a、服务侧代理将接收到的响应转换为服务提供者可以理解的数据格式后,发送给服务提供者。
本发明实施例提供的微服务系统,通过如图4a所示的工作流程,可以实现微服务注册功能,且在微服务注册过程中,能够有效的减少对不必要的注册中心进行注册。
如图4b所示,本发明实施例提供的微服务系统的微服务发现流程可以包括以下步骤:
步骤401b、服务消费者发起服务发现请求。
步骤402b、服务侧代理基于控制策略,选择注册中心,将服务发现请求转换为该注册中心可以理解的数据格式后,发送至所选择的注册中心的注册中心侧代理。
在实施中,上述控制策略可以是在如图4a所述服务注册流程中,由控制器预先向服务侧代理下发的控制策略。
步骤403b、注册中心侧代理基于控制策略,过滤服务发现请求,将满足策略的服务发现请求转发给注册中心。
在实施中,上述控制策略可以是在如图4a所述服务注册流程中,由控制器预先向注册中心侧代理下发的控制策略。
步骤404b、注册中心返回本注册中心的服务列表。
步骤405b、注册中心侧代理劫持注册中心发出的服务列表,并将该服务列表透传至服务侧代理。
步骤406b、服务侧代理将接收到的服务列表转换至服务消费者可以理解的数据格式后,发送至该服务消费者。
通过本步骤,服务消费者可以从接收到的服务列表中查找需要的服务,并在查找到需要的服务后,可通过步骤407b至步骤412b发起对该服务的调用。其中,被调用的服务也可以称之为服务提供者,为便于区分,将服务消费者对应的服务侧代理称之为服务消费者侧代理,并将服务提供者对应的服务侧代理称之为服务提供者侧代理。
步骤407b、服务消费者发起服务调用请求。
步骤408b、服务消费者侧代理劫持服务消费者发出的服务调用请求,并将其转换为服务提供者可以理解的数据格式,并发送至服务提供者侧代理。
步骤409b、服务提供者侧代理基于控制策略,过滤服务调用请求,并将符合控制策略的服务调用请求发送至服务提供者。
步骤410b、服务提供者返回服务调用响应。
步骤411b、服务提供者侧代理将该服务调用响应透传至服务消费者侧代理。
步骤412b、服务消费者侧代理将接收到的服务调用响应转换为服务消费者可以理解的数据格式后,发送给服务消费者。
上述步骤410b至步骤412b,具体可以是:服务提供者侧代理劫持该服务提供者返回的服务调用响应,并向服务消费者发送该服务调用响应,此时服务消费者侧代理劫持该服务消费者接收的服务调用响应,并将其转换为服务消费者可以理解的数据格式后,向服务消费者转达该服务调用响应。
本发明实施例提供的微服务系统,通过如图4b所示的工作流程,可以实现微服务发现以及调用功能,且在微服务发现以及调用的过程中,能够有效的减少服务消费者对不必要的注册中心进行服务发现请求,且使得服务提供者仅对符合控制策略的服务调用请求进行响应,从而大大的减少了数据交互过程。
如图4c所示,本发明实施例提供的微服务系统的微服务保活和注册中心更新流程可以包括以下步骤:
步骤401c、服务提供者侧代理主动发起服务保活:代理将对方可理解的服务保活请求发送至注册中心侧代理。
步骤402c、注册中心侧代理基于控制策略过滤服务保活请求,以将符合控制策略的服务保活请求发送至注册中心。
步骤403c、注册中心发起服务探测。
步骤404c、注册中心测代理将服务检测请求转换为服务提供者代理可以理解的数据格式。
步骤405c、服务提供者侧代理基于策略过滤服务检测请求,返回服务状态。
步骤406c、注册中心测代理将服务检测请求响应转换为注册中心可以理解的数据格式。
需要说明的是,在实施中,若通过服务提供者主动发起服务保活流程,则可以仅执行上述步骤401c和步骤402c,而不执行步骤403c至步骤406c;另外,在注册中心发起服务检测,以实现微服务保活功能的情况下,可以仅执行步骤403c至步骤406c,而不执行步骤401c和步骤402c。
另外,在执行步骤401c和步骤402c,或者,执行步骤403c至步骤406c之后,若注册中心基于接收到的服务检测请求响应确定本注册中心的服务列表有更新,则可以通过以下步骤407c至步骤416c,实现通知关注本注册中心的微服务:本注册中心的服务列表有更新,从而使微服务在需要的情况下,能够从本注册中心获取最新的服务列表。
步骤407c、注册中心发起服务列表更新通知。
步骤408c、注册中心侧代理劫持上述注册中心发起的服务列表更新通知,并基于控制策略,将该服务列表更新通知转化为控制器可以理解的数据格式后,发送至控制器。
在实施中,上述控制策略可以是在如图4a所述服务注册流程中,由控制器预先向注册中心侧代理下发的控制策略。
步骤409c、控制器基于接收到的服务列表更新通知,基于控制策略向服务侧代理发送服务列表更新通知。
步骤410c、服务侧代理基于控制策略过滤接收到的服务列表更新通知,以将符合控制策略的服务列表更新通知发送给对应的微服务。
在实施中,上述控制策略可以是在如图4a所述服务注册流程中,由控制器预先向服务侧代理下发的控制策略。
当微服务基于接收到该服务列表更新通知,且需要获取该服务列表更新通知对应的服务列表时,执行以下步骤411c至步骤416c,以将服务列表更新为最新的服务列表。
步骤411c、微服务发起更新服务列表请求。
步骤412c、服务侧代理基于控制策略,选择注册中心,将更新服务列表请求转换为该注册中心可以理解的数据格式后,发送至所选择的注册中心的注册中心侧代理。
步骤413c、注册中心侧代理基于控制策略,过滤更新服务列表请求,将满足策略的更新服务列表请求转发给注册中心。
步骤414c、注册中心返回本注册中心的服务列表。
步骤415c、注册中心侧代理将服务列表透传至服务侧代理。
步骤416c、服务侧代理将接收到的服务列表转换至微服务可以理解的数据格式后,发送至该微服务。
本发明实施例提供的微服务系统,通过如图4c所示的工作流程,可以实现对注册中心服务列表进行更新,并在更新后通知关注该注册中心的微服务,此时,微服务可以根据自己的需求决定是否获取最新的服务列表。
请参阅图5,是本申请实施例提供的一种微服务注册方法的流程图,如图5所示,该微服务注册方法可以包括以下步骤:
步骤501、目标微服务发出注册请求。
步骤502、服务侧代理劫持所述注册请求,并基于第一预设控制策略,确定所述注册请求的目标注册中心,以及将所述注册请求转化为所述目标注册中心对应的协议数据。
其中,上述目标微服务可以理解为待注册的服务提供者,上述目标注册中心可以是基于第一预设控制策略所选取的注册中心,上述目标注册中心对应的协议数据可以理解为:所述目标注册中心可以理解的数据格式。
步骤503、所述服务侧代理通过注册中心侧代理将所述注册请求发送至所述目标注册中心。
本发明实施例提供的微服务注册方法,能够应用于如图1所示实施例中的微服务系统,且能够通过该微服务系统实现本发明实施例提供的微服务注册方法中的各个过程,具体可以参照如图4a所示实施例中的步骤411a至步骤416a,在此对微服务注册方法的具体实现过程不再赘述。
作为一种可选的实施方式,所述服务侧代理通过注册中心侧代理将所述注册请求发送至所述目标注册中心,包括:
所述服务侧代理向所述目标注册中心发送所述注册请求;
注册中心侧代理劫持发送至所述目标注册中心的所述注册请求,且在所述注册请求符合第二预设控制策略的情况下,将所述注册请求发送至所述目标注册中心。
当然,在实施中,还可以通过服务侧代理与注册中心侧代理之间的数据透传功能,使服务侧代理将所述注册请求透传至所述注册中心侧代理,然后由注册中心侧代理判断该注册请求是否符合第二预设控制策略,这样,在该注册请求符合第二预设控制策略的情况下,将所述注册请求发送至所述目标注册中心。
本实施方式中,在注册中心侧代理还基于第二预设控制策略,对需要发送至目标注册中心的注册请求进行筛选,以仅将符合第二预设控制策略的注册请求发送给目标注册中心,这样,能够确保目标注册中心接收到的注册请求是满足目标注册中心的处理能力,且符合目标注册中心的鉴权要求的注册请求,从而提升目标注册中心的可靠性和安全性。
作为一种可选的实施方式,所述第一预设控制策略由控制器下发至所述服务侧代理,且所述第二预设控制策略由控制器下发至所述注册中心侧代理。
本实施方式中,与如图1所示方法实施例中相同的,由控制器分别向服务侧代理和注册中心侧代理下发控制策略。
这样,在实施中,若微服务或注册中心有更新时,能够基于控制策略对更新的微服务或注册中心进行控制策略的下发,从而避免了需要人为的分别对每一个微服务或注册中心进行控制策略的配置,能够简化对微服务和注册中心的控制策略进行配置的过程。
作为一种可选的实施方式,在所述服务侧代理劫持所述注册请求,并基于第一预设控制策略,确定所述注册请求的目标注册中心之前,所述方法还包括:
所述目标注册中心在上线时,发出上线信息报告;
所述注册中心侧代理劫持所述上线信息报告,并转化为控制器对应的协议数据后,转发至所述控制器;
所述控制器根据所述上线信息报告维护注册中心列表,并下发与所述目标注册中心对应的第二预设控制策略至所述注册中心侧代理。
本实施方式中,与如图1所示微服务系统中,注册中心上线时的数据传输过程相同,且具有相同的有益效果,具体可以参照如图4a所示数据交互图中的步骤401a至步骤406a,在此不再赘述。
作为一种可选的实施方式,在所述控制器根据所述上线信息报告维护注册中心列表之后,所述方法还包括:
所述服务侧代理向所述控制器发送注册中心列表请求;
所述控制器响应于所述注册中心列表请求,向所述服务侧代理发送所述注册中心列表和所述第一预设控制策略。
本实施方式中,由服务侧代理预先向控制器发送注册中心列表请求,以使控制器基于该请求下发注册中心列表和控制策略,这样,该服务侧代理后续劫持到微服务的注册请求时,能能够基于该册中心列表和控制策略确定目标注册中心,从而仅向目标注册中心或目标注册中心对应的注册中心服务器发送注册请求。
通过本发明实施例提供的微服务注册方法,仅将微服务在符合控制策略的注册中心进行注册,能够减少不必要的注册过程,且在微服务注册过程中,通过对应的代理对消息接收者接收到或者对消息发送者发出的消息进行协议数据转换,避免了在注册中心进行集中的数据转换,使注册中心的工作压力大,而造成的注册中心的稳定性和可靠性差的问题。
请参阅图6,是本发明实施例提供的一种微服务发现方法的流程图,如图6所示,该微服务发现方法可以包括以下步骤:
步骤601、第一微服务发出服务发现请求。
步骤602、服务侧代理劫持所述服务发现请求,并基于第一预设控制策略,确定所述服务发现请求对应的目标注册中心,并将所述服务发现请求转化为所述目标注册中心对应的协议数据。
步骤603、所述服务侧代理将所述服务发现请求发送至注册中心侧代理,以通过所述注册中心侧代理将所述服务发现请求发送至所述目标注册中心。
步骤604、所述目标注册中心响应于所述服务发现请求返回服务列表,且所述服务列表通过所述注册中心侧代理和所述服务侧代理,发送至所述第一微服务。
在实施中,上述步骤601至步骤604的具体实施过程可以参照如图4b所示流程图中的步骤401b至步骤406b,且上述微服务发现方法,与如图1所示微服务系统用于执行微服务发现过程时具有相同的有益效果,在此不再赘述。
作为一种可选的实施方式,所述方法还包括:
所述第一微服务基于接收到的所述服务列表发出服务调用请求,其中,所述服务调用请求用于调用第二微服务;
服务侧代理劫持所述服务调用请求,将所述服务调用请求转化为所述第二微服务对应的协议数据后,发送至所述第二微服务;
所述第二微服务响应于所述服务调用请求,发出服务调用响应信息;
所述服务侧代理劫持所述服务调用响应信息,并将所述服务调用响应信息转化为所述第一微服务对应的协议数据后,发送至所述第一微服务。
在实施中,第一微服务能够基于步骤604中获取到的服务列表确定需要调用的第二微服务,从而生成用于调用所述第二微服务的服务调用请求,这样,服务侧代理便能够将所述服务调用请求转化为所述第二微服务对应的协议数据后,发送至所述第二微服务。
在实施中,第二微服务侧的代理与第一微服务侧的代理可以是互不相同的两个代理,这样,第二微服务可以通过该第二微服务侧的代理接收第一微服务的代理发送的服务调用请求。
作为一种可选的实施方式,所述第一微服务与所述第二微服务分别与不同的服务侧代理连接;
与所述第一微服务连接的服务侧代理,用于劫持所述第一微服务发出的所述服务调用请求,将所述服务调用请求转化为所述第二微服务对应的协议数据后,发送至与所述第二微服务连接的服务侧代理;
与所述第二微服务连接的服务侧代理,用于在确定所述服务调用请求符合所述第二微服务对应的预设控制策略的情况下,将所述服务调用请求转发至所述第二微服务。
本实施方式中,第二微服务侧的代理还需要对接收到的服务调用请求进一步筛选,以仅将符合所述第二微服务对应的预设控制策略的服务调用请求转发至所述第二微服务,从而能够避免第二微服务接收到无效、安全性低或者无法响应的服务调用请求,从而能够提升第二微服务的可靠性和安全性。
本发明实施例提供的微服务发现方法,能够使第一微服务仅向指定的目标注册中心获取服务列表,以从获取到的服务列表中查找需要调用的第二微服务,而无需向每一个注册中心进行微服务发现过程,从而减轻了微服系统在执行微服务发现过程中的数据交互量,能够更加准确和快速的发现第二微服务。
请参阅图7,是本发明实施例提供的一种微服务保活方法的流程图,如图7所示,该微服务保活方法可以包括以下步骤:
步骤701、注册中心侧代理劫持目标注册中心向服务侧代理发送的状态检测请求,并将所述状态检测请求转化为所述服务侧代理对应的协议数据后,发送至所述服务侧代理。
步骤702、在所述状态检测请求符合第一预设控制策略的情况下,所述服务侧代理基于所述状态检测请求,检测目标微服务的工作状态,并通过所述注册中心侧代理向所述目标注册中心反馈所述目标微服务的工作状态。
或者,
步骤703、所述服务侧代理基于第一预设控制策略主动向所述目标注册中心发送所述目标注册中心能够理解的服务保活请求。
本步骤具体可以理解为:服务侧代理基于第一预设控制策略确定需要发起服务保活请求的时机,以及确定需要向哪个或者哪些目标注册中心发送该服务保活请求,从而将该服务保活请求转化为目标注册中心能够理解的数据格式后,将其发送至对应的目标注册中心。
步骤704、所述注册中心侧代理劫持所述服务保活请求,并在所述服务保活请求符合第二预设控制策略的情况下,将所述服务保活请求发送至所述目标注册中心。
需要说明的是,上述步骤701和步骤702对应由注册中心发起保活流程的实施方式,上述步骤703和步骤704对应由服务侧代理主动发起保活流程的实施方式。
在实施中,可以在同一微服务保活流程中,仅执行上述步骤701和步骤702,或者仅执行上述步骤703和步骤704,或同时执行上述步骤701至步骤704。
本发明实施例提供的微服务保活方法,能够应用于如图1所示的微服务系统,且与如图1所示的微服务系统在执行微服务保活流程中的过程相同,且能够取得相同的有益效果,具体可以参照如图4c所示的数据交互过程中的步骤401c至步骤406c,在此不再赘述。
作为一种可选的实施方式,在所述服务侧代理通过所述注册中心侧代理向所述目标注册中心反馈所述目标微服务的工作状态之后,所述方法还包括:
在所述目标注册中心基于所述目标微服务的工作状态,确定服务列表有更新的情况下,所述目标注册中心通过所述注册中心侧代理基于所述第二预设控制策略向控制器发送第一服务列表更新通知;
所述控制器响应于所述第一服务列表更新通知,基于第三预设控制策略通过所述服务侧代理向所述目标微服务发送第二服务列表更新通知,所述第三预设控制策略为预先配置于所述控制器内的控制策略。
在实施中,上述目标注册中心通过所述注册中心侧代理向控制器发送第一服务列表更新通知的时机可以是周期性的发送或者,在获知服务列表有更新时立即发送,在此不作具体限定。
所述目标注册中心通过所述注册中心侧代理基于所述第二预设控制策略向控制器发送第一服务列表更新通知,可以理解为:目标注册中心发出第一服务列表更新通知,注册中心侧代理劫持该第一服务列表更新通知,并基于所述第二预设控制策略将该第一服务列表更新通知转化为控制器能够理解的数据格式后,发送至所述控制器。
另外,上述控制器响应于所述第一服务列表更新通知,基于第三预设控制策略通过所述服务侧代理向所述目标微服务发送第二服务列表更新通知,可以理解为:控制器响应于所述第一服务列表更新通知,在特定的时机向服务侧代理发送第二服务列表更新通知,服务侧代理在接收到第二服务列表更新通知时,基于第二预设控制策略,对发送第二服务列表更新通知的控制器进行安全验证,以在该控制器通过安全验证的情况下,将第二服务列表更新通知转化为该服务侧代理对应的目标微服务能够识别的数据格式,然后,发送至该目标微服务。
在实施中,上述第三预设控制策略可以是控制器预先存储的控制策略,基于该第三预设控制策略能够确定在什么时机向服务侧代理发送第二服务列表更新通知。
本实施方式中的各个步骤,具体可以参照如图4c所示数据交互示意图中的步骤407c至步骤410c,在此不再赘述。
作为一种可选的实施方式,在所述控制器响应于所述第一服务列表更新通知,基于第三预设控制策略通过所述服务侧代理向与所述目标微服务发送第二服务列表更新通知之后,所述方法还包括:
所述目标微服务发出更新服务列表请求;
所述服务侧代理劫持更新服务列表请求,并基于所述第一预设控制策略,确定所述更新服务列表请求对应的目标注册中心,以及将所述更新服务列表请求转化为所述目标注册中心对应的协议数据后,通过注册中心侧代理,向所述目标注册中心发送所述更新服务列表请求;
所述目标注册中心响应于所述更新服务列表请求,通过所述服务侧代理和所述注册中心侧代理向所述目标微服务返回服务列表。
本实施方式中,目标微服务在接收到第二服务列表更新通知之后,能够根据自己的需求,发出更新服务列表请求,例如:在需要调用第二服务列表更新通知中涉及的服务提供者的情况下,发出更新服务列表请求。
另外,服务侧代理在劫持到目标微服务发出的更新服务列表请求之后,可以根据第一预设控制策略确定在什么时机执行:确定所述更新服务列表请求对应的目标注册中心,以及将所述更新服务列表请求转化为所述目标注册中心对应的协议数据后,通过注册中心侧代理,向所述目标注册中心发送所述更新服务列表请求的过程,例如:周期性的执行或者在劫持到上述更新服务列表请求时,立即执行等。
上述通过注册中心侧代理,向所述目标注册中心发送所述更新服务列表请求,可以理解为:服务侧代理向目标注册中心发送更新服务列表请求,该目标注册中心对应的注册中心侧代理劫持该更新服务列表请求,并在该注册中心侧代理确定该更新服务列表请求符合目标注册中心的第二预设控制策略的情况下,向该目标注册中心发送所述更新服务列表请求。
上述目标注册中心响应于所述更新服务列表请求,通过所述服务侧代理和所述注册中心侧代理向所述目标微服务返回服务列表,可以理解为:目标注册中心响应于所述更新服务列表请求,反馈服务列表,注册中心侧代理劫持该目标注册中心发出的服务列表,并通过与服务侧代理之间的数据透传功能,将该服务列表发送至服务侧代理,以由服务侧代理将该服务列表转化为目标微服务能够识别的数据格式后,发送给该目标微服务。
上述目标微服务更新服务列表的过程具体可以参照如图4c所示数据交互过程中的步骤411c至步骤416c,在此不再赘述。
本发明实施例提供的微服务保活方法能够由注册中心或者服务侧代理触发,以实现微服务保活流程。
请参阅图8,是本发明实施例提供的一种微服务注册装置的结构图,如图8所示,该微服务注册装置800,包括:
第一发送模块801,用于通过目标微服务发出注册请求;
第一数据处理模块802,用于通过服务侧代理劫持所述注册请求,并基于第一预设控制策略,确定所述注册请求的目标注册中心,以及将所述注册请求转化为所述目标注册中心对应的协议数据;
第二发送模块803,用于通过注册中心侧代理将所述注册请求发送至所述目标注册中心。
可选的,所述第二发送模块803,包括:
第一发送单元,用于通过所述服务侧代理向所述目标注册中心发送所述注册请求;
第一数据处理单元,用于通过注册中心侧代理劫持发送至所述目标注册中心的所述注册请求,且在所述注册请求符合第二预设控制策略的情况下,将所述注册请求发送至所述目标注册中心。
可选的,所述第一预设控制策略由控制器下发至所述服务侧代理,且所述第二预设控制策略由控制器下发至所述注册中心侧代理。
可选的,微服务注册装置800还包括:
上报模块,用于在所述目标注册中心上线时,发出上线信息报告;
第一转发模块,用于通过所述注册中心侧代理劫持所述上线信息报告,并转化为控制器对应的协议数据后,转发至所述控制器;
第一下发模块,用于通过所述控制器根据所述上线信息报告维护注册中心列表,并下发与所述目标注册中心对应的第二预设控制策略至所述注册中心侧代理。
可选的,微服务注册装置800还包括:
第一请求模块,用于通过所述服务侧代理向所述控制器发送注册中心列表请求;
第一响应模块,用于通过所述控制器响应于所述注册中心列表请求,向所述服务侧代理发送所述注册中心列表和所述第一预设控制策略。
本发明实施例提供的微服务注册装置800,能够实现如图5所示方法实施例中的各个过程,且能够取得相同的有益效果,为避免重复,在此不再赘述。
请参阅图9,是本发明实施例提供的一种微服务发现装置的结构图,如图9所示,该微服务发现装置900,包括:
第三发送模块901,用于通过第一微服务发出服务发现请求;
第二数据处理模块902,用于通过服务侧代理劫持所述服务发现请求,并基于第一预设控制策略,确定所述服务发现请求对应的目标注册中心,并将所述服务发现请求转化为所述目标注册中心对应的协议数据;
第四发送模块903,用于通过所述服务侧代理将所述服务发现请求发送至注册中心侧代理,以通过所述注册中心侧代理将所述服务发现请求发送至所述目标注册中心;
第五发送模块904,用于通过所述目标注册中心响应于所述服务发现请求返回服务列表,且所述服务列表通过所述注册中心侧代理和所述服务侧代理,发送至所述第一微服务。
可选的,微服务发现装置900还包括:
第二请求模块,用于通过所述第一微服务基于接收到的所述服务列表发出服务调用请求,其中,所述服务调用请求用于调用第二微服务;
第二转发模块,用于通过服务侧代理劫持所述服务调用请求,将所述服务调用请求转化为所述第二微服务对应的协议数据后,发送至所述第二微服务;
第二响应模块,用于所述第二微服务响应于所述服务调用请求,发出服务调用响应信息;
第三转发模块,用于所述服务侧代理劫持所述服务调用响应信息,并将所述服务调用响应信息转化为所述第一微服务对应的协议数据后,发送至所述第一微服务。
可选的,所述第一微服务与所述第二微服务分别与不同的服务侧代理连接;
与所述第一微服务连接的服务侧代理,用于劫持所述第一微服务发出的所述服务调用请求将所述服务调用请求转化为所述第二微服务对应的协议数据后,发送至与所述第二微服务连接的服务侧代理;
与所述第二微服务连接的服务侧代理,用于在确定所述服务调用请求符合所述第二微服务对应的预设控制策略的情况下,将所述服务调用请求转发至所述第二微服务。
本发明实施例提供的微服务发现装置900,能够实现如图6所示方法实施例中的各个过程,且能够取得相同的有益效果,为避免重复,在此不再赘述。
请参阅图10,是本发明实施例提供的一种微服务保活装置的结构图。
在一种可选的实施方式中,如图10a所示,该微服务保活装置1000,包括:第三数据处理模块1001和检测模块1002。
其中,第三数据处理模块1001,用于通过注册中心侧代理劫持目标注册中心向服务侧代理发送的状态检测请求,并将所述状态检测请求转化为所述服务侧代理对应的协议数据后,发送至所述服务侧代理;
检测模块1002,用于通过在所述状态检测请求符合第一预设控制策略的情况下,所述服务侧代理基于所述状态检测请求,检测目标微服务的工作状态,并通过所述注册中心侧代理向所述目标注册中心反馈所述目标微服务的工作状态。
在另一种可选的实施方式中,如图10b所示,该微服务保活装置1000,包括:第六发送模块1003和第四数据处理模块1004。
其中,第六发送模块1003,用于通过所述服务侧代理基于第一预设控制策略主动向所述目标注册中心发送所述目标注册中心能够理解的服务保活请求;
第四数据处理模块1004,用于通过所述注册中心侧代理劫持所述服务保活请求,并在所述服务保活请求符合第二预设控制策略的情况下,将所述服务保活请求发送至所述目标注册中心。
需要说明的是,在另一实施方式中,微服务保活装置1000可以同时包括上述第三数据处理模块1001、检测模块1002、第六发送模块1003和第四数据处理模块1004,在此不作具体限定。
可选的,微服务保活装置1000还包括:
第七发送模块,用于在所述目标注册中心基于所述目标微服务的工作状态,确定服务列表有更新的情况下,使所述目标注册中心通过所述注册中心侧代理基于所述第二预设控制策略向控制器发送第一服务列表更新通知;
第三响应模块,用于通过所述控制器响应于所述第一服务列表更新通知,基于第三预设控制策略通过所述服务侧代理向所述目标微服务发送第二服务列表更新通知,所述第三预设控制策略为预先配置于所述控制器内的控制策略。
可选的,微服务保活装置1000还包括:
第三请求模块,用于通过所述目标微服务发出更新服务列表请求;
第四转发模块,用于通过所述服务侧代理劫持更新服务列表请求,并基于所述第一预设控制策略,确定所述更新服务列表请求对应的目标注册中心,以及将所述更新服务列表请求转化为所述目标注册中心对应的协议数据后,通过注册中心侧代理,向所述目标注册中心发送所述更新服务列表请求;
第四响应模块,用于通过所述目标注册中心响应于所述更新服务列表请求,通过所述服务侧代理和所述注册中心侧代理向所述目标微服务返回服务列表。
本发明实施例提供的微服务保活装置1000,能够实现如图7所示方法实施例中的各个过程,且能够取得相同的有益效果,为避免重复,在此不再赘述。
请参阅图11,是本申请实施例提供的一种微服务系统1100的结构图,该微服务系统1100包括处理器1101、存储器1102及存储在所述存储器1102上并可在所述处理器1101上运行的计算机程序,所述计算机程序被所述处理器1101执行时实现如图5、图6或图7所述的方法实施例中的各个步骤。
本发明实施例中,云计算平台1100能够实现图1至图7中任一种方法实施例中的各个过程,且具有相同的有益效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述图1至图7中任一种方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述的计算机可读存储介质,如ROM、RAM、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (21)
1.一种微服务系统,其特征在于,包括:
N个微服务,所述N为大于1的整数;
M个注册中心,所述M为大于1的整数;
控制器;以及,
与所述控制器连接的代理模块,所述代理模块包括与所述N个微服务连接的服务侧代理以及与所述M个注册中心连接的注册中心侧代理,且所述服务侧代理与所述注册中心侧代理分别连接;
其中,所述控制器包括:策略维护模块,所述策略维护模块用于向所述服务侧代理下发第一预设控制策略,并向所述注册中心侧代理下发第二预设控制策略;
所述服务侧代理包括:服务侧策略过滤单元和服务侧协议转换单元,所述服务侧策略过滤单元基于所述第一预设控制策略,对发出或接收的消息进行过滤,以将所述发出或接收的消息转发至与所述第一预设控制策略匹配的消息接收者;所述服务侧协议转换模块,用于将接收到的消息转换成消息接收者可以理解的数据格式;
所述注册中心侧代理包括:注册中心侧策略过滤单元和注册中心侧协议转换单元,所述注册中心侧策略过滤单元基于所述第二预设控制策略,对发出或接收的消息进行过滤,以将所述发出或接收的消息转发至与所述第二预设控制策略匹配的消息接收者;所述注册中心侧协议转换模块,用于将接收到的消息转换成消息接收者可以理解的数据格式。
2.根据权利要求1所述的系统,其特征在于,所述服务侧代理的数量为N个,所述N个服务侧代理与所述N个微服务对应连接,所述注册中心侧代理的数量为M个,所述M个注册中心侧代理与所述M个注册中心对应连接;
其中,由目标服务侧代理存储和执行该目标微服务的控制策略,目标注册中心侧代理存储和执行目标注册中心的控制策略,所述目标服务侧代理与所述目标微服务对应连接,所述目标注册中心侧代理与所述目标注册中心对应连接,所述N个服务侧代理包括所述目标服务侧代理,所述M个注册中心侧代理包括所述目标注册中心侧代理,所述目标微服务为所述N个微服务中与所述目标服务侧代理对应连接的一个,所述目标注册中心为所述M个注册中心中与所述目标注册中心侧代理对应连接的一个。
3.根据权利要求1所述的系统,其特征在于,所述控制器还包括:注册中心维护模块,用于维护所述M个注册中心对应的注册中心列表和所述M个注册中心的状态信息。
4.根据权利要求1所述的系统,其特征在于,在第一注册中心的服务列表或状态有更新的情况下,所述注册中心维护模块还基于第三预设控制策略以消息推送的方式或者通知消息的方式通知与所述第一注册中心关联的第一微服务,其中,所述M个注册中心包括所述第一注册中心,所述N个微服务包括所述第一微服务。
5.根据权利要求1所述的系统,其特征在于,所述服务侧代理还包括:服务侧保活模块,用于基于所述第一预设控制策略,主动发起服务保活流程;
和/或,
所述注册中心侧代理还包括:注册中心侧保活模块,用于接收注册中心发送的状态检测请求,以基于所述第二预设控制策略,将所述状态检测请求发送至对应的微服务。
6.一种微服务注册方法,其特征在于,所述方法包括:
目标微服务发出注册请求;
服务侧代理劫持所述注册请求,并基于第一预设控制策略,确定所述注册请求的目标注册中心,以及将所述注册请求转化为所述目标注册中心对应的协议数据;
所述服务侧代理通过注册中心侧代理将所述注册请求发送至所述目标注册中心。
7.根据权利要求6所述的微服务注册方法,其特征在于,所述服务侧代理通过注册中心侧代理将所述注册请求发送至所述目标注册中心,包括:
所述服务侧代理向所述目标注册中心发送所述注册请求;
注册中心侧代理劫持发送至所述目标注册中心的所述注册请求,且在所述注册请求符合第二预设控制策略的情况下,将所述注册请求发送至所述目标注册中心。
8.根据权利要求7所述的微服务注册方法,其特征在于,所述第一预设控制策略由控制器下发至所述服务侧代理,且所述第二预设控制策略由控制器下发至所述注册中心侧代理。
9.根据权利要求6所述的微服务注册方法,其特征在于,在所述服务侧代理劫持所述注册请求,并基于第一预设控制策略,确定所述注册请求的目标注册中心之前,所述方法还包括:
所述目标注册中心在上线时,发出上线信息报告;
所述注册中心侧代理劫持所述上线信息报告,并转化为控制器对应的协议数据后,转发至所述控制器;
所述控制器根据所述上线信息报告维护注册中心列表,并下发与所述目标注册中心对应的第二预设控制策略至所述注册中心侧代理。
10.根据权利要求9所述的微服务注册方法,其特征在于,在所述控制器根据所述上线信息报告维护注册中心列表之后,所述方法还包括:
所述服务侧代理向所述控制器发送注册中心列表请求;
所述控制器响应于所述注册中心列表请求,向所述服务侧代理发送所述注册中心列表和所述第一预设控制策略。
11.一种微服务发现方法,其特征在于,所述方法包括:
第一微服务发出服务发现请求;
服务侧代理劫持所述服务发现请求,并基于第一预设控制策略,确定所述服务发现请求对应的目标注册中心,并将所述服务发现请求转化为所述目标注册中心对应的协议数据;
所述服务侧代理将所述服务发现请求发送至注册中心侧代理,以通过所述注册中心侧代理将所述服务发现请求发送至所述目标注册中心;
所述目标注册中心响应于所述服务发现请求返回服务列表,且所述服务列表通过所述注册中心侧代理和所述服务侧代理,发送至所述第一微服务。
12.根据权利要求11所述的微服务发现方法,其特征在于,所述方法还包括:
所述第一微服务基于接收到的所述服务列表发出服务调用请求,其中,所述服务调用请求用于调用第二微服务;
服务侧代理劫持所述服务调用请求,将所述服务调用请求转化为所述第二微服务对应的协议数据后,发送至所述第二微服务;
所述第二微服务响应于所述服务调用请求,发出服务调用响应信息;
所述服务侧代理劫持所述服务调用响应信息,并将所述服务调用响应信息转化为所述第一微服务对应的协议数据后,发送至所述第一微服务。
13.根据权利要求12所述的微服务发现方法,其特征在于,所述第一微服务与所述第二微服务分别与不同的服务侧代理连接;
与所述第一微服务连接的服务侧代理,用于劫持所述第一微服务发出的所述服务调用请求,将所述服务调用请求转化为所述第二微服务对应的协议数据后,发送至与所述第二微服务连接的服务侧代理;
与所述第二微服务连接的服务侧代理,用于在确定所述服务调用请求符合所述第二微服务对应的预设控制策略的情况下,将所述服务调用请求转发至所述第二微服务。
14.一种微服务保活方法,其特征在于,所述方法包括:
注册中心侧代理劫持目标注册中心向服务侧代理发送的状态检测请求,并将所述状态检测请求转化为所述服务侧代理对应的协议数据后,发送至所述服务侧代理;
在所述状态检测请求符合第一预设控制策略的情况下,所述服务侧代理基于所述状态检测请求,检测目标微服务的工作状态,并通过所述注册中心侧代理向所述目标注册中心反馈所述目标微服务的工作状态;
或者,
所述服务侧代理基于第一预设控制策略主动向所述目标注册中心发送所述目标注册中心能够理解的服务保活请求;
所述注册中心侧代理劫持所述服务保活请求,并在所述服务保活请求符合第二预设控制策略的情况下,将所述服务保活请求发送至所述目标注册中心。
15.根据权利要求14所述的微服务保活方法,其特征在于,在所述服务侧代理通过所述注册中心侧代理向所述目标注册中心反馈所述目标微服务的工作状态之后,所述方法还包括:
在所述目标注册中心基于所述目标微服务的工作状态,确定服务列表有更新的情况下,所述目标注册中心通过所述注册中心侧代理基于所述第二预设控制策略向控制器发送第一服务列表更新通知;
所述控制器响应于所述第一服务列表更新通知,基于第三预设控制策略通过所述服务侧代理向所述目标微服务发送第二服务列表更新通知,所述第三预设控制策略为预先配置于所述控制器内的控制策略。
16.根据权利要求15所述的微服务保活方法,其特征在于,在所述控制器响应于所述第一服务列表更新通知,基于第三预设控制策略通过所述服务侧代理向与所述目标微服务发送第二服务列表更新通知之后,所述方法还包括:
所述目标微服务发出更新服务列表请求;
所述服务侧代理劫持更新服务列表请求,并基于所述第一预设控制策略,确定所述更新服务列表请求对应的目标注册中心,以及将所述更新服务列表请求转化为所述目标注册中心对应的协议数据后,通过注册中心侧代理,向所述目标注册中心发送所述更新服务列表请求;
所述目标注册中心响应于所述更新服务列表请求,通过所述服务侧代理和所述注册中心侧代理向所述目标微服务返回服务列表。
17.一种微服务注册装置,其特征在于,包括:
第一发送模块,用于通过目标微服务发出注册请求;
第一数据处理模块,用于通过服务侧代理劫持所述注册请求,并基于第一预设控制策略,确定所述注册请求的目标注册中心,以及将所述注册请求转化为所述目标注册中心对应的协议数据;
第二发送模块,用于通过注册中心侧代理将所述注册请求发送至所述目标注册中心。
18.一种微服务发现装置,其特征在于,包括:
第三发送模块,用于通过第一微服务发出服务发现请求;
第二数据处理模块,用于通过服务侧代理劫持所述服务发现请求,并基于第一预设控制策略,确定所述服务发现请求对应的目标注册中心,并将所述服务发现请求转化为所述目标注册中心对应的协议数据;
第四发送模块,用于通过所述服务侧代理将所述服务发现请求发送至注册中心侧代理,以通过所述注册中心侧代理将所述服务发现请求发送至所述目标注册中心;
第五发送模块,用于通过所述目标注册中心响应于所述服务发现请求返回服务列表,且所述服务列表通过所述注册中心侧代理和所述服务侧代理,发送至所述第一微服务。
19.一种微服务保活装置,其特征在于,所述微服务保活装置包括:第三数据处理模块和检测模块,和/或,所述微服务保活装置包括:第六发送模块和第四数据处理模块;
所述第三数据处理模块,用于通过注册中心侧代理劫持目标注册中心向服务侧代理发送的状态检测请求,并将所述状态检测请求转化为所述服务侧代理对应的协议数据后,发送至所述服务侧代理;
所述检测模块,用于在所述状态检测请求符合第一预设控制策略的情况下,使所述服务侧代理基于所述状态检测请求,检测目标微服务的工作状态,并通过所述注册中心侧代理向所述目标注册中心反馈所述目标微服务的工作状态;
所述第六发送模块,用于通过所述服务侧代理基于第一预设控制策略主动向所述目标注册中心发送所述目标注册中心能够理解的服务保活请求;
所述第四数据处理模块,用于通过所述注册中心侧代理劫持所述服务保活请求,并在所述服务保活请求符合第二预设控制策略的情况下,将所述服务保活请求发送至所述目标注册中心。
20.一种微服务系统,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求6至10中任一项所述的服务注册方法中的步骤,或者,所述计算机程序被所述处理器执行时实现如权利要求11至13中任一项所述的服务发现方法中的步骤,或者,所述计算机程序被所述处理器执行时实现如权利要求14至16中任一项所述的服务保活方法中的步骤。
21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求6至10中任一项所述的服务注册方法中的步骤,或者,所述计算机程序被处理器执行时实现如权利要求11至13中任一项所述的服务发现方法中的步骤,或者,所述计算机程序被所述处理器执行时实现如权利要求14至16中任一项所述的服务保活方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011479245.9A CN114650317A (zh) | 2020-12-15 | 2020-12-15 | 一种微服务系统以及微服务注册、发现和保活方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011479245.9A CN114650317A (zh) | 2020-12-15 | 2020-12-15 | 一种微服务系统以及微服务注册、发现和保活方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114650317A true CN114650317A (zh) | 2022-06-21 |
Family
ID=81989854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011479245.9A Pending CN114650317A (zh) | 2020-12-15 | 2020-12-15 | 一种微服务系统以及微服务注册、发现和保活方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114650317A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109547570A (zh) * | 2018-12-29 | 2019-03-29 | 深圳云天励飞技术有限公司 | 服务注册方法、装置、注册中心管理设备及存储介质 |
CN110401696A (zh) * | 2019-06-18 | 2019-11-01 | 华为技术有限公司 | 一种去中心化处理的方法、通信代理、主机以及存储介质 |
CN111131193A (zh) * | 2019-12-10 | 2020-05-08 | 四川新网银行股份有限公司 | 支持多协议异构非代码侵入的分布式服务治理的方法 |
CN111917838A (zh) * | 2020-07-14 | 2020-11-10 | 浙江大华技术股份有限公司 | 基于微服务的处理方法及装置、存储介质、电子装置 |
WO2020237797A1 (zh) * | 2019-05-31 | 2020-12-03 | 烽火通信科技股份有限公司 | 一种微服务框架下动态配置管理方法及系统 |
-
2020
- 2020-12-15 CN CN202011479245.9A patent/CN114650317A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109547570A (zh) * | 2018-12-29 | 2019-03-29 | 深圳云天励飞技术有限公司 | 服务注册方法、装置、注册中心管理设备及存储介质 |
WO2020237797A1 (zh) * | 2019-05-31 | 2020-12-03 | 烽火通信科技股份有限公司 | 一种微服务框架下动态配置管理方法及系统 |
CN110401696A (zh) * | 2019-06-18 | 2019-11-01 | 华为技术有限公司 | 一种去中心化处理的方法、通信代理、主机以及存储介质 |
CN111131193A (zh) * | 2019-12-10 | 2020-05-08 | 四川新网银行股份有限公司 | 支持多协议异构非代码侵入的分布式服务治理的方法 |
CN111917838A (zh) * | 2020-07-14 | 2020-11-10 | 浙江大华技术股份有限公司 | 基于微服务的处理方法及装置、存储介质、电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109587254B (zh) | 云服务器访问方法、装置、云服务器及存储介质 | |
US10798218B2 (en) | Environment isolation method and device | |
US11563649B2 (en) | NF service consumer restart detection using direct signaling between NFs | |
US20080184354A1 (en) | Single sign-on system, information terminal device, single sign-on server, single sign-on utilization method, storage medium, and data signal | |
CN110855633A (zh) | 分布式拒绝服务ddos攻击的防护方法、装置及系统 | |
CN111245901B (zh) | 一种支持服务参数下发的分布式服务注册发现方法及系统 | |
US20070016674A1 (en) | Information exchange system, management server, and method for reducing network load used in the same | |
CN106657259B (zh) | 一种用于服务器集群的路由服务器及路由服务方法 | |
CN113630266B (zh) | 一种实例化边缘应用服务器的方法和装置 | |
JP2019525604A (ja) | ネットワーク機能nf管理方法及びnf管理装置 | |
CN113347037A (zh) | 一种数据中心访问方法及装置 | |
CN114978910B (zh) | 一种虚拟化核心网的时间敏感实现方法及系统 | |
CN114640633B (zh) | 负载均衡器及其实现方法、负载均衡的方法、网关系统 | |
CN114650317A (zh) | 一种微服务系统以及微服务注册、发现和保活方法 | |
CN113992685B (zh) | 一种服务控制器确定方法、系统及装置 | |
CN115086176A (zh) | 基于SpringCloud微服务技术实现服务治理策略动态下发的系统 | |
CN113141390B (zh) | Netconf通道管理方法及装置 | |
CN111404761B (zh) | 内容成环检测处理方法、装置和计算机可读存储介质 | |
CN109639849B (zh) | 一种地址查询处理方法及服务发现装置 | |
CN115334493A (zh) | 一种状态订阅通知的方法、装置及设备 | |
CN113596119A (zh) | 边缘能力分发方法、系统、设备及计算机可读存储介质 | |
CN106850245B (zh) | 一种诊断测试消息处理方法及装置 | |
EP3335378B1 (en) | Method, apparatus and system for method for start-up of monitoring of monitor objects in a computer-integrated telecommunications environment | |
CN116633765A (zh) | 业务处理方法、装置、设备及存储介质 | |
CN111083210A (zh) | 流媒体服务调度方法及系统 |
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 |