一种通用的高可用服务实现方法、系统、介质及终端技术方案

技术编号:27133479 阅读:27 留言:0更新日期:2021-01-25 20:25
本发明专利技术提供一种通用的高可用服务实现方法、系统、介质及终端,方法包括:当一服务需要启动时,通过守护服务代理向高可用代理服务发送请求信息,各节点中的高可用代理服务根据服务信息中的标识信息,进行查询;向服务路径中写入第一节点的节点标识;写入完成后,对所述服务进行实时监听,启动工作状态;对分布式数据库中的所述服务路径进行监测;根据服务的实时监听结果和服务路径的变化,控制第二节点切换工作状态;本发明专利技术可以提供一种通用框架来集成现有的传统业务,无需进行额外的二次开发工作,使之能够以最小的代价达到高可用的需求,克服了在切换延迟高和需要额外更多的系统资源上无发同时解决的传统问题。源上无发同时解决的传统问题。源上无发同时解决的传统问题。

【技术实现步骤摘要】
一种通用的高可用服务实现方法、系统、介质及终端


[0001]本专利技术涉及计算机领域和通信领域,尤其涉及一种通用的高可用服务实现方法、系统、介质及终端。

技术介绍

[0002]在计算机集群领域,服务高可用是非常重要的一个功能,通常,服务的高可用的首要目的是可以容忍实现服务的软硬件存在的不可避免的故障,一旦服务依赖的软硬件存在故障时,能够及时地迁移到备用的服务节点。
[0003]目前,常用的服务的迁移采用如下几种方式:
[0004]一是心跳检测的方式,主要是通过在探测工作节点(Active)的服务,当发现服务异常或者不能工作的时候,来执行相关的切换流程,将工作节点(Active)的服务切换至备用节点(Standby),但是,心跳检测会有一个最大服务不可用的容忍时间,这会增加服务切换的等待延迟(增加服务不可用的时间)。并且,备用节点的备用服务可以处于关闭(冷备份)或者开启(热备份)的状态。冷备份的好处是不用占用过多的系统资源(CPU、内存等),但是缺点是会进一步增加切换的延迟(增加服务不可用的时间)。热备份的恰好相反,好处是不会带来额外的切换延迟,但是需要实时待命,增加了系统的开销。
[0005]二是采用负载分担的方式,这种方式通常还有另外一个需求就是该服务单个节点可能无法满足性能要求。负载分担的好处是不存在主备节点的关系,所有节点的服务都处于Active状态。缺点是负载均衡器和服务之间,必须对状态的处理达成一致。
[0006]另外,上述两种方式都需要额外的开发工作,例如约定心跳的协议内容,容忍失败的时间间隔等等。因此,亟需一种新的通用的高可用服务实现方法,以克服在切换延迟高和需要额外更多的系统资源上无发同时解决的问题。

技术实现思路

[0007]鉴于以上所述现有技术的缺点,本专利技术提供一种通用的高可用服务实现方法、系统、介质及终端,以解决上述技术问题。
[0008]本专利技术提供的通用的高可用服务实现方法,包括:
[0009]当一服务需要启动时,通过守护服务代理向高可用代理服务发送请求信息,所述请求信息包括用于标识所述服务的服务标识信息;
[0010]各节点中的高可用代理服务根据服务信息中的标识信息,进行查询,分别获取查询结果;
[0011]第一节点中的高可用代理服务的查询结果包括服务路径,所述第一节点的高可用代理服务向所述服务路径中写入所述第一节点的节点标识;
[0012]写入完成后,对所述服务进行实时监听,并向所述守护服务代理反馈,所述第一节点中的服务根据反馈启动工作状态;
[0013]当第二节点的高可用代理服务的查询结果不为空时,判定所述服务存在实例,并
对分布式数据库中的所述服务路径进行监测;
[0014]通过所述服务的实时监听结果和监测的分布式数据库中的所述服务路径的变化,控制第二节点切换工作状态,启动服务工作状态。
[0015]可选的,所述守护服务代理通过消息队列的方式向高可用代理服务发送请求信息,通过所述请求信息申请成为工作状态。
[0016]可选的,所述第一节点的高可用代理服务将所述服务路径和所述第一节点的节点标识写入至分布式数据库中后,对所述服务路径设置释放时间;所述第一节点中的服务根据反馈启动工作状态后,通过高可用代理服务在所述释放时间内定期向分布式数据库更新状态。
[0017]可选的,所述分布式数据库为高可用的键值存储系统,通过服务守护进程对服务进程进行实时监听。
[0018]可选的,当第一节点监测当前运行的所述服务出现故障时,通过所述高可用代理服务对分布式数据库中的服务路径进行删除;
[0019]当第二节点监测到分布式数据库中的所述服务路径的变化,触发重新查询,获取查询结果,当结果为空时,所述第二节点的高可用代理服务向所述服务路径中写入所述第二节点的节点标识;
[0020]写入完成后,继续对所述服务进行实时监听,向所述守护服务代理反馈,控制第二节点切换工作状态,启动服务工作状态。
[0021]可选的,当第一节点出现网络中断时,在超过预设的时间阈值后,控制第二节点切换工作状态,启动服务工作状态。
[0022]本专利技术还提供一种通用的高可用服务框架系统,包括:分布式数据库、用于提供高可用代理服务的高可用代理服务模块、用于提供守护服务代理的守护服务代理模块,
[0023]当一服务需要启动时,通过守护服务代理向高可用代理服务发送请求信息,所述请求信息包括用于标识所述服务的服务标识信息;
[0024]各节点中的高可用代理服务根据服务信息中的标识信息,进行查询,分别获取查询结果;
[0025]第一节点中的高可用代理服务的查询结果包括服务路径,所述第一节点的高可用代理服务向所述服务路径中写入所述第一节点的节点标识;
[0026]写入完成后,对所述服务进行实时监听,并向所述守护服务代理反馈,所述第一节点中的服务根据反馈启动工作状态;
[0027]当第二节点的高可用代理服务的查询结果不为空时,判定所述服务存在实例,并对分布式数据库中的所述服务路径进行监测;
[0028]通过所述服务的实时监听结果和监测的分布式数据库中的所述服务路径的变化,控制第二节点切换工作状态,启动服务工作状态。
[0029]可选的,所述高可用代理服务模块包括分布式数据客户端和消息队列服务单元,所述守护服务代理模块包括进程监测单元和消息队列单元。
[0030]本专利技术还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述中任一项所述方法。
[0031]本专利技术还提供一种电子终端,包括:处理器及存储器;
[0032]所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如上述中任一项所述方法。
[0033]本专利技术的有益效果:本专利技术中的通用的高可用服务实现方法、系统、介质及终端,可以提供一种通用框架来集成现有的传统业务,无需进行额外的二次开发工作,使之能够以最小的代价达到高可用的需求,克服了在切换延迟高和需要额外更多的系统资源上无发同时解决的传统问题。
附图说明
[0034]图1是本专利技术实施例中通用的高可用服务实现方法的组件部署关系示意图。
[0035]图2是本专利技术实施例中通用的高可用服务实现方法的高可用代理服务组件示意图。
[0036]图3是本专利技术实施例中通用的高可用服务实现方法的服务服务代理组件示意图。
[0037]图4是本专利技术实施例中通用的高可用服务实现方法服务启动及主备切换流程。
[0038]图5是本专利技术实施例中通用的高可用服务实现方法的节点1正常状态示意图。
[0039]图6是本专利技术实施例中通用的高可用服务实现方法的节点1故障时节点2切换示意图。
[0040]图7是本专利技术实施例中通用的高可用服务实现方法的流程示意图。
具体实施方式
[0041]以下通过特定的具体实例说明本专利技术的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种通用的高可用服务实现方法,其特征在于,包括:当一服务需要启动时,通过守护服务代理向高可用代理服务发送请求信息,所述请求信息包括用于标识所述服务的服务标识信息;各节点中的高可用代理服务根据服务信息中的标识信息,进行查询,分别获取查询结果;第一节点中的高可用代理服务的查询结果包括服务路径,所述第一节点的高可用代理服务向所述服务路径中写入所述第一节点的节点标识;写入完成后,对所述服务进行实时监听,并向所述守护服务代理反馈,所述第一节点中的服务根据反馈启动工作状态;当第二节点的高可用代理服务的查询结果不为空时,判定所述服务存在实例,并对分布式数据库中的所述服务路径进行监测;通过所述服务的实时监听结果和监测的分布式数据库中的所述服务路径的变化,控制第二节点切换工作状态,启动服务工作状态。2.根据权利要求1所述的通用的高可用服务实现方法,其特征在于,所述守护服务代理通过消息队列的方式向高可用代理服务发送请求信息,通过所述请求信息申请成为工作状态。3.根据权利要求1所述的通用的高可用服务实现方法,其特征在于,所述第一节点的高可用代理服务将所述服务路径和所述第一节点的节点标识写入至分布式数据库中后,对所述服务路径设置释放时间;所述第一节点中的服务根据反馈启动工作状态后,通过高可用代理服务在所述释放时间内定期向分布式数据库更新状态。4.根据权利要求3所述的通用的高可用服务实现方法,其特征在于,所述分布式数据库为高可用的键值存储系统,通过服务守护进程对服务进程进行实时监听。5.根据权利要求4所述的通用的高可用服务实现方法,其特征在于,当第一节点监测当前运行的所述服务出现故障时,通过所述高可用代理服务对分布式数据库中的服务路径进行删除;当第二节点监测到分布式数据库中的所述服务路径的变化,触发重新查询,获取查询结果,当结果为空时,所述第二节点的高可用代理服务向所述服务路径中写...

【专利技术属性】
技术研发人员:嵇斌
申请(专利权)人:重庆紫光华山智安科技有限公司
类型:发明
国别省市:

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

1