微服务实例的启动方法、装置、设备及存储介质制造方法及图纸

技术编号:28622364 阅读:18 留言:0更新日期:2021-05-28 16:18
本申请实施例公开了微服务实例的启动方法、装置、设备及存储介质。其中,微服务实例运行在微服务架构中,微服务实例包括业务进程和基础框架进程,所述方法包括:基础框架进程检测业务进程是否做好服务准备;业务进程检测基础框架进程是否做好服务准备;若所述基础框架进程检测到所述业务进程做好服务准备,且所述业务进程检测到所述基础框架进程做好服务准备,则所述基础框架进程将所述微服务实例的服务注册信息发送到服务注册表中,以使所述服务注册表通知各个服务调用方所述微服务实例已启动。采用本申请实施例能够优雅地启动微服务实例,以确保新上线的微服务实例是可用的。

【技术实现步骤摘要】
微服务实例的启动方法、装置、设备及存储介质
本申请涉及计算机应用
,尤其涉及微服务实例的启动方法、装置、设备及存储介质。
技术介绍
微服务架构是一项在云中部署应用和服务的新技术,旨在将一个复杂系统分解为一组微服务,每个微服务关注于一个业务功能。微服务实例通过进程提供微服务能力,例如负责业务处理流程,或者负责微服务的核心功能,核心功能如服务发现、服务注册、负载均衡、流量管理等。对于微服务实例而言,微服务更新升级过程中,微服务实例的启动流程很重要,不够优雅地启动流程会导致业务请求报错,从而影响服务的可用性。
技术实现思路
本专利技术实施例提供微服务实例的启动方法、装置、设备以及存储介质,能够优雅地启动微服务实例,以确保新上线的微服务实例是可用的。本专利技术实施例提供了一种微服务实例的启动方法,所述微服务实例运行在微服务架构中,所述微服务实例包括业务进程和基础框架进程,所述方法包括:所述基础框架进程检测所述业务进程是否做好服务准备;所述业务进程检测所述基础框架进程是否做好服务准备;若所述基础框架进程检测到所述业务进程做好服务准备,且所述业务进程检测到所述基础框架进程做好服务准备,则所述基础框架进程将所述微服务实例的服务注册信息发送到服务注册表中,以使所述服务注册表通知各个服务调用方所述微服务实例已启动。相应的,本申请实施例提供一种微服务实例的启动装置,该装置具有实现第一方面所述的微服务实例的启动的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一种实现方式中,所述微服务实例运行在微服务架构中,所述微服务实例包括业务进程和基础框架进程,所述装置包括:第一检测单元,用于通过所述基础框架进程检测所述业务进程是否做好服务准备;第二检测单元,用于通过所述业务进程检测所述基础框架进程是否做好服务准备;发送单元,用于若所述基础框架进程检测到所述业务进程做好服务准备,且所述业务进程检测到所述基础框架进程做好服务准备,则通过所述基础框架进程将所述微服务实例的服务注册信息发送到服务注册表中,以使所述服务注册表通知服务调用方所述微服务实例已启动。相应的,本申请实施例提供一种服务设备,所述服务设备为微服务架构中的一个节点设备,所述服务设备中运行有微服务实例,所述微服务实例包括业务进程和基础框架进程,所述服务设备包括处理器,所述处理器与存储器耦合,其中:所述存储器,用于存储计算机程序;所述处理器,用于调用所述计算机程序,使得所述服务设备执行如上所述的微服务实例的启动方法。相应的,本申请实施例提供一种计算机可读取存储介质,所述计算机可读取存储介质中存储计算机程序,所述计算机程序被处理器执行,用于实现如上所述的微服务实例的启动方法。通过本申请实施例,基础框架进程检测业务进程是否做好服务准备,业务进程检测基础框架进程是否做好服务准备,只有在基础框架进程检测到业务进程做好服务准备,且业务进程检测到基础框架进程做好服务准备之后,基础框架进程才会将微服务实例的服务注册信息发送到服务注册表中,以使服务注册表通知各个服务调用方微服务实例已启动,能够实现优雅地启动微服务实例,以确保新上线的微服务实例是可用的。附图说明为了更清楚地说明本申请实施例或
技术介绍
中的技术方案,下面将对本申请实施例中所需要使用的附图进行说明。图1为本专利技术实施例提供的一种微服务架构的架构示意图;图2为本专利技术实施例提供的一种微服务实例的示意图;图3为本专利技术实施例提供的另一种微服务架构的架构示意图;图4为本专利技术实施例提供的一种健康检查接口协议的示意图;图5为本专利技术实施例提供的一种微服务实例的启动方法的流程示意图;图6为本专利技术实施例提供的另一种微服务实例的启动方法的流程示意图;图7为本专利技术实施例提供的一种微服务实例的启动装置的结构示意图;图8为本专利技术实施例提供的一种服务设备的结构示意图。具体实施方式下面结合本申请实施例中的附图对本申请实施例进行描述。本专利技术实施例提供的微服务实例的启动方法应用于多进程微服务场景中,多进程微服务属于微服务架构的一种基于多进程部署的场景,单个微服务实例通过两个独立的进程(即业务进程和基础框架进程)共同提供微服务能力。请参见图1,图1是本专利技术实施例提供的一种微服务架构的架构示意图。如图1所示,微服务架构运行有至少一个微服务实例,每个微服务实例包括业务进程和基础框架进程,该微服务实例通过业务进程和基础框架进程共同提供微服务能力。其中,业务进程负责业务逻辑处理,即负责业务处理流程。基础框架进程负责微服务的核心功能,核心功能如服务发现、服务注册、负载均衡、流量管理等。在该实施例中,服务提供方(即提供微服务能力的一方)可以通过上述微服务架构向服务消费者提供服务。服务消费者(即服务调用方)可以通过上述微服务架构调用微服务实例,以获取服务。服务注册表是联系服务提供者和服务消费者的桥梁,用于维护服务提供者实例的最新网络位置,例如,可以使用一个分布式的、一致性的键值存储系统维护服务注册信息。具体实现中,1、在微服务更新升级过程中,用于提供更新升级后的微服务的微服务实例将会在微服务架构中上线并启动,该微服务实例可以包括基础框架进程和业务进程。基础框架进程可以检测业务进程是否做好服务准备,业务进程可以检测基础框架进程是否做好服务准备,若基础框架进程检测到业务进程做好服务准备,且业务进程检测到基础框架进程做好服务准备,表明基础框架进程和业务进程的监听端口均已准备好处理业务请求,则基础框架进程可以将该微服务实例的服务注册信息发送到服务注册表中。2、服务注册表在接收到微服务实例的服务注册信息之后,可以向各个服务调用方(即调用微服务接口的一方)发送通知消息,通知消息可以携带该微服务实例的实例标识,通知消息可以用于指示微服务架构新增实例标识对应微服务实例,以通知各个服务调用方该微服务实例已启动。3、在任一服务调用方接收到服务注册表发送的通知消息之后,确定上述微服务实例已启动,进而可以调用该微服务实例,以获取相应服务,即服务调用方可以向该微服务实例发送业务请求,例如假设该微服务实例用于提供负载均衡,那么服务调用方可以调用该微服务实例,以请求负载均衡。本申请实施例通过上述实现方式能够优雅地启动微服务实例,确保服务调用方感知到的新上线的微服务实例是可用的。上述实现方式中,服务调用方在接收到服务注册表的通知之后,才会发起业务请求,因此能够准确地控制关于服务调用方的业务请求的接入时间,为业务服务的更新升级提供了可用性和稳定性保证,确保业务服务发布过程不会出现服务调用方业务请求报错,提高了业务服务的运维效率,降低了开发和运维的投入成本。另外,微服务实例的优雅启动是实现微服务实例弹性伸缩能力的必要条件。其中,本申请实施例中的服务注册表为自建的服务注册表,即该服务注册表是按需定制开发的,仅提供本申本文档来自技高网
...

【技术保护点】
1.一种微服务实例的启动方法,其特征在于,所述微服务实例运行在微服务架构中,所述微服务实例包括业务进程和基础框架进程,所述方法包括:/n所述基础框架进程检测所述业务进程是否做好服务准备;/n所述业务进程检测所述基础框架进程是否做好服务准备;/n若所述基础框架进程检测到所述业务进程做好服务准备,且所述业务进程检测到所述基础框架进程做好服务准备,则所述基础框架进程将所述微服务实例的服务注册信息发送到服务注册表中,以使所述服务注册表通知各个服务调用方所述微服务实例已启动。/n

【技术特征摘要】
1.一种微服务实例的启动方法,其特征在于,所述微服务实例运行在微服务架构中,所述微服务实例包括业务进程和基础框架进程,所述方法包括:
所述基础框架进程检测所述业务进程是否做好服务准备;
所述业务进程检测所述基础框架进程是否做好服务准备;
若所述基础框架进程检测到所述业务进程做好服务准备,且所述业务进程检测到所述基础框架进程做好服务准备,则所述基础框架进程将所述微服务实例的服务注册信息发送到服务注册表中,以使所述服务注册表通知各个服务调用方所述微服务实例已启动。


2.如权利要求1所述的方法,其特征在于,所述基础框架进程将所述微服务实例的服务注册信息发送到服务注册表中之后,还包括:
在所述微服务实例接收到所述服务调用方发送的业务请求时,所述业务进程和所述基础框架进程对所述业务请求进行处理。


3.如权利要求1所述的方法,其特征在于,所述基础框架进程检测所述业务进程是否做好服务准备,包括:
所述基础框架进程访问所述业务进程的健康检查接口,若所述基础框架进程对所述业务进程的健康检查接口访问成功,则所述基础框架进程检测到所述业务进程做好服务准备;
所述业务进程检测所述基础框架进程是否做好服务准备,包括:
所述业务进程访问所述基础框架进程的健康检查接口,若所述业务进程对所述基础框架进程的健康检查接口访问成功,则所述业务进程检测到所述基础框架进程做好服务准备。


4.如权利要求3所述的方法,其特征在于,所述业务进程的健康检查接口是所述业务进程基于gRPC协议提供的;所述基础框架进程访问所述业务进程的健康检查接口,包括:
所述业务进程对所述业务进程的健康检查接口进行初始化处理;
所述基础框架进程访问所述业务进程的健康检查接口,直至所述基础框架进程对所述业务进程的健康检查接口访问成功;
所述基础框架进程的健康检查接口是所述基础框架进程基于gRPC协议提供的;所述业务进程访问所述基础框架进程的健康检查接口,包括:
所述基础框架进程对所述基础框架进程的健康检查接口进行初始化处理;
所述业务进程访问所述基础框架进程的健康检查接口,直至所述业务进程对所述基础框架进程的健康检查接口访问成功。


5.如权利要求4所述的方法,其特征在于,所述基础框架进程访问所述业务进程的健康检查接口,直至所述基础框架进程对所述业务进程的健康检查接口访问成功,包括:
所述基础框架进程访问所述业务进程的健康检查接口,得到第一访问结果;
若所述第一访问结果指示对所述业务进程的健康检查接口访问失败,则触发执行所述基础框架进程访问所述业务进程的健康检查接口,得到第一访问结果,直至所述基础框架进程访问所述业务进程的健康检查接口得到的第一访问结果指示对所述业务进程的健康检查接口访问成功;
所述业务进程访问所述基础框架进程的健康检查接口,直至所述业务进程对所述基础框架进程的健康检查接口访问成功,...

【专利技术属性】
技术研发人员:陈敏龙武
申请(专利权)人:微民保险代理有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1