分布式健康检查方法、计算设备及计算机存储介质技术

技术编号:17099547 阅读:39 留言:0更新日期:2018-01-21 11:17
本发明专利技术公开了一种分布式健康检查方法、计算设备及计算机存储介质,用于对在分布式协调系统中注册的服务进行健康检查。其中,方法包括:获取分布式协调系统中提供的待检测的服务的地址信息;根据所述待检测的服务的地址信息,对服务进行健康检查;若根据健康检查结果确定所述服务为不可用服务,则判断所述服务是否符合预设下线策略;若是,则对所述服务进行下线处理。采用本方案,可以实现基于策略的服务下线处理,完善分布式协调系统的健康检查机制,保证系统稳定性及可靠性。

Distributed health inspection methods, computing equipment and computer storage media

The invention discloses a distributed health inspection method, a computing device and a computer storage medium, which is used for health inspection of the registered services in the distributed coordination system. The method comprises the following steps: acquiring address information to detect service provided by the distributed coordination system; according to the address information of the detected service, health examination service; according to the results of health examination to determine if the service is not available, is whether the service conforms to the preset referral strategy; if so, the offline processing service. Adopting this scheme, we can achieve policy based service offline processing, improve the health check mechanism of distributed coordination system, and ensure the stability and reliability of the system.

【技术实现步骤摘要】
分布式健康检查方法、计算设备及计算机存储介质
本专利技术涉及电子信息
,具体涉及一种分布式健康检查方法、计算设备及计算机存储介质。
技术介绍
在分布式系统中,为了实现各个计算节点的协调运作,通常需通过分布式协调系统(如Consul、zookeeper等分布式应用程序协调系统)对各个计算节点进行协调管理。为进一步保证分布式系统的计算节点的高可用性等,需对分布式协调系统中注册的服务进行安全性检测。然而,目前在对注册的服务进行安全性检测的过程中,当发现服务异常时,通常自动将该服务进行下线处理。但是,由于服务所处的分布式系统环境不同,若直接对异常服务进行下线处理则会影响分布式系统的稳定性等性能。例如,若某个服务为分布式系统中的核心服务,当对该服务直接进行下线处理时,将导致分布式系统的稳定性及可靠性大幅降低。所以,目前仍缺乏能对分布式协调系统中注册的服务进行完善的安全性检测,并对服务进行基于策略的下线处理的分布式健康检查方案。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的分布式健康检查方法、计算设备及计算机存储介质。根据本专利技术的一个方面,提供了一种分布式健康检查方法,所述方法用于对在分布式协调系统中注册的服务进行健康检查,其中,方法包括:获取分布式协调系统中提供的待检测的服务的地址信息;根据所述待检测的服务的地址信息,对服务进行健康检查;若根据健康检查结果确定所述服务为不可用服务,则判断所述服务是否符合预设下线策略;若是,则对所述服务进行下线处理。根据本专利技术的另一个方面,提供了一种计算设备,所述计算设备用于对在分布式协调系统中注册的服务进行健康检查,其中,计算设备包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;获取分布式协调系统中提供的待检测的服务的地址信息;根据所述待检测的服务的地址信息,对服务进行健康检查;若根据健康检查结果确定所述服务为不可用服务,则判断所述服务是否符合预设下线策略;若是,则对所述服务进行下线处理。根据本专利技术的又一个方面,提供了一种计算机存储介质,所述计算机存储介质中存储有至少一可执行指令,用于对在分布式协调系统中注册的服务进行健康检查,该可执行指令使处理器执行以下操作:获取分布式协调系统中提供的待检测的服务的地址信息;根据所述待检测的服务的地址信息,对服务进行健康检查;若根据健康检查结果确定所述服务为不可用服务,则判断所述服务是否符合预设下线策略;若是,则对所述服务进行下线处理。根据本专利技术提供的分布式健康检查方法、计算设备及计算机存储介质,通过获取分布式协调系统中提供的待检测的服务的地址信息;并根据待检测的服务的地址信息,对服务进行健康检查;若根据健康检查结果确定服务为不可用服务,则判断该服务是否符合预设下线策略;若是,则对所述服务进行下线处理。本方案中,在对服务进行健康检查后进一步地根据预设的下线策略对服务进程下线处理,从而可以实现基于策略的服务下线处理,完善分布式协调系统的健康检查机制,保证系统稳定性及可靠性。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本专利技术一个实施例提供的分布式健康检查方法的流程图;图2示出了根据本专利技术另一个实施例提供的分布式健康检查方法的流程图;图3示出了根据本专利技术一个实施例提供的一种电子设备的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图1示出了根据本专利技术一个实施例提供的分布式健康检查方法的流程图,其中,该方法用于对在分布式协调系统中注册的服务进行健康检查。如图1所示,该方法包括:步骤S110,获取分布式协调系统中提供的待检测的服务的地址信息。其中,本实施例中对具体的分布式协调系统类型以及服务的类型等不做限定。具体地,分布式协调系统中包含有服务的相关信息,如服务名称、服务地址等。通过获取分布式协调系统中提供的待检测的服务的地址信息,可以准确快速地定位待检测的服务。可选的,服务的地址信息可以为URL地址信息,URL地址信息中包含服务所对应服务节点的端口地址。步骤S120,根据待检测的服务的地址信息,对服务进行健康检查。根据步骤S110中获取的地址信息,对该地址信息对应的待检测服务进行健康检查。其中,具体的健康检查策略本领域技术人员可根据实际业务自行设置,例如,可根据预设的检测周期,每当达到预设的检测周期时,对待检测的服务进行健康检查。其中,每个服务所对应的检测周期可以相同,也可以不同。步骤S130,根据健康检查结果确定服务是否为不可用服务,若是,则执行步骤S140;若否,则本方法结束。其中,可根据预设的可用性判断规则根据健康检查结果确定服务是否为不可用服务。例如,当在预设时间内,连续检测到服务端口不可用次数达到预设次数时,则确定该服务为不可用服务,则进一步执行步骤S140。步骤S140,判断服务是否符合预设下线策略,若是,则执行步骤S150;若否,则本方法结束。当步骤S130确定服务为不可用服务后,进一步判断该服务是否符合预设的下线策略。其中,预设的下线策略本领域技术人员可根据实际业务情况自行设置。例如,预设的下线策略可根据服务的权重等信息进行设置。步骤S150,对服务进行下线处理。当步骤S140中判断的服务符合预设的下线策略时,可通过人工下线或自动下线等机制对该服务进行下线处理。由此可见,本实施例提供的分布式健康检查方法,通过获取分布式协调系统中提供的待检测的服务的地址信息,从而可以快速准确地定位待检测的服务;并对定位到的待检测的服务进行健康检查,在根据健康检查结果确定服务为不可用服务后,进一步地判断服务是否符合预设下线策略,在符合预设下线策略的情况下才将该服务进行下线处理,从而实现基于策略的服务下线处理,完善分布式协调系统的健康检查机制,避免现有技术中在对服务进行健康检查后,直接对不可用服务进行下线处理而导致的系统稳定性及可靠性降低的弊端。图2示出了根据本专利技术另一个实施例的分布式健康检查方法的流程图,其中,该方法用于对在分布式协调系统中注册的服务进行健康检查。如图2所示,该方法包括:步骤S210,获取分布式协调系统中提供的待检测的服务的地址信息,以及待检测的服务的服务类型信息。其中,本实施例中对具体的分布式协调系统类型以及服务的类型等不做限定。可选的,分布式协调系统可以为zookeeper分布式应用程序协调系统,当服务上线后zookeeper分布式应用程序协调系统中的服务发现组件自动调用服务注册接口将服务注册到zookeepe本文档来自技高网...
分布式健康检查方法、计算设备及计算机存储介质

【技术保护点】
一种分布式健康检查方法,所述方法用于对在分布式协调系统中注册的服务进行健康检查;所述方法包括:获取分布式协调系统中提供的待检测的服务的地址信息;根据所述待检测的服务的地址信息,对服务进行健康检查;若根据健康检查结果确定所述服务为不可用服务,则判断所述服务是否符合预设下线策略;若是,则对所述服务进行下线处理。

【技术特征摘要】
1.一种分布式健康检查方法,所述方法用于对在分布式协调系统中注册的服务进行健康检查;所述方法包括:获取分布式协调系统中提供的待检测的服务的地址信息;根据所述待检测的服务的地址信息,对服务进行健康检查;若根据健康检查结果确定所述服务为不可用服务,则判断所述服务是否符合预设下线策略;若是,则对所述服务进行下线处理。2.根据权利要求1所述的方法,其中,所述方法还包括:获取分布式协调系统提供的待检测的服务的服务类型信息;其中,所述服务类型信息包括以下类型的至少一种:http类型、redis类型、mysql类型、以及codis类型。3.根据权利要求2所述的方法,其中,所述服务类型为http类型,则所述对服务进行健康检查进一步包括:定时轮询服务端口,对服务端口可用性进行检测,和/或对服务端口连接时间进行检测;所述服务类型为redis类型,则所述对服务进行健康检查进一步包括:对内存占用情况、键值数量检测、慢日志、和/或服务端口可用性进行检测;所述服务类型为mysql类型,则所述对服务进行健康检查进一步包括:对mysql端口可用性进行检测;所述服务类型为codis类型,则所述对服务进行健康检查进一步包括:对codis端口可用性进行检测,和/或进行查询率检测。4.根据权利要求1-3任一项所述的方法,其中,所述服务由服务提供者所包含的服务节点提供,所述服务提供者被预先配置有相应的配置项,其中,所述配置项包括:允许剩余的最少服务节点数、服务权重、和/或允许自动下线逻辑值。5.根据权利要求4所述的方法,其中,所述判断所述服务是否符合预设下线策略进一步包括:判断所述服务对应的服务提供者配置项中的允许自动下线逻辑值是否为是;若所述允许自动下线逻辑值为是,则进一步判断所述服务对应的服务提供者所包含的服务节点数是否大于所述服务对应的服务提供者配置项中的允许剩...

【专利技术属性】
技术研发人员:王利超
申请(专利权)人:掌阅科技股份有限公司
类型:发明
国别省市:北京,11

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

1