一种基于代理模拟app投票的自动灾备切换方法技术

技术编号:37664776 阅读:14 留言:0更新日期:2023-05-26 04:22
本发明专利技术公开了一种基于代理模拟app投票的自动灾备切换方法,具体包括如下步骤:101)部署代理结点步骤、102)预处理步骤、103)投票步骤、104)切换步骤;本发明专利技术提供能自动灾备切换、上传错误原因有助于快速分析集群故障原因的一种基于代理模拟app投票的自动灾备切换方法。法。

【技术实现步骤摘要】
一种基于代理模拟app投票的自动灾备切换方法


[0001]本专利技术涉及服务端
,更具体的说,它涉及一种基于代理模拟app投票的自动灾备切换方法。

技术介绍

[0002]在系统灾备体系设计时,需要考虑RTO指标(Recovery Time Objective,恢复时间目标),以达到生产环境停止服务时间尽可能短的目的。在实际的应用过程中,数据库稳定性是生产环境持续提供服务的主要考虑因素。当出现生产数据库损毁的场景时,需要手工将生产环境的应用路由切换至灾备环境。在灾备体系中,这种手工切换会在短时间内造成一定的业务影响。

技术实现思路

[0003]本专利技术克服了现有技术的不足,提供一种基于代理模拟app投票的自动灾备切换方法。
[0004]本专利技术的技术方案如下:
[0005]一种基于代理模拟app投票的自动灾备切换方法,具体包括如下步骤:
[0006]101)部署代理结点步骤:在全国各地布署多个代理结点,并在每个结点部署多个模拟app,进行投票调试;
[0007]102)预处理步骤:模拟app的代理程序启动,将从每个结点获取各集群投票信息;
[0008]103)投票步骤:模拟app投票时,通过调用check_health接口,以实际服务器模拟业务进行读写操作;当有错误发生时,模拟app除了投票外,还会上传错误的结果,以供分析原因;
[0009]其中,每个结点先收集取得所有集群的配置,再按集群进行循环,依次检查每一个集群,每个集群的多个地址,按当前次数求余后取得一个地址进行访问;检查结果上报给收集结点,如果集群检查都好的,按整体一次约定的时间适当等待;
[0010]104)切换步骤:根据投票结果,如果有集群的投票中有坏结果且超出阈值,灾备的切换程序自动进行流量切换。
[0011]进一步的,全国布有至少8个服务器点,以分布在广州、上海、北京的公有云服务上为主。
[0012]进一步的,步骤102)中读取到集群配置信息后,开始检查,在每间隔一定时间内完成一次所有集群的检查,每个集群按设定的顺序依次调用check_health接口。
[0013]进一步的,每间隔一定时间为15秒以内。
[0014]进一步的,模拟app的投票结果存在收集结点的数据库中,切换程序定期检查投票结果,如果有集群超过70%的代理报告错误,则认为此集群已经出现问题,需要切换后端服务到对端的灾备集群。
[0015]进一步的,切换程序包括误切换功能,当报代理少于3个,只报警不切换;期望代理
数是n个,且n大于5,当实际上报数不足时,则认定网络不好,发出人工灾备切换建议。
[0016]进一步的,定期检查以每5秒一次。
[0017]进一步的,还包括105)恢复步骤:在灾备的切换程序切换动作发生后,设置切换标志并通知相关人员,在低峰时手工切回。
[0018]本专利技术相比现有技术优点在于:本专利技术模拟用户实际网络情况,多个代理保证投票的可靠性。切换速度远胜于人工,尽可能的减少用户停服时间。收集程序和切换程序独立,不会互相干扰,提高系统可靠性。代理结点上传错误原因有助于快速分析集群故障原因。
附图说明
[0019]图1为本专利技术的示意图。
具体实施方式
[0020]下面详细描述本专利技术的实施方式,其中自始至终相同或类似的标号表示相同或类似的元件或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本专利技术而不能作为对本专利技术的限制。
[0021]本
技术人员可以理解的是,除非另外定义,这里使用的所有术语(包括技术术语和科技术语)具有与本专利技术所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样的定义,不会用理想化或过于正式的含义来解释。
[0022]各实施方式中提到的有关于步骤的标号,仅仅是为了描述的方便,而没有实质上先后顺序的联系。各具体实施方式中的不同步骤,可以进行不同先后顺序的组合,实现本专利技术的专利技术目的。
[0023]下面结合附图和具体实施方式对本专利技术进一步说明。
[0024]如图1所示,一种基于代理模拟app投票的自动灾备切换方法,具体包括如下步骤:
[0025]101)部署代理结点步骤:在全国各地布署多个代理结点,并在每个结点部署多个模拟app,进行投票调试;其中,全国布有至少8个服务器点,以分布在广州、上海、北京的公有云服务上为主。
[0026]102)预处理步骤:模拟app的代理程序启动,将从每个结点获取各集群投票信息;读取到集群配置信息后,开始检查,在每间隔一定时间内完成一次所有集群的检查,每个集群按设定的顺序依次调用check_health接口。每间隔一定时间一般为15秒以内。
[0027]103)投票步骤:模拟app投票时,通过调用check_health接口,以实际服务器模拟业务进行读写操作;当有错误发生时,模拟app除了投票外,还会上传错误的结果,以供分析原因;
[0028]模拟app的投票结果存在收集结点的数据库中,切换程序定期检查投票结果,如果有集群超过70%的代理报告错误,则认为此集群已经出现问题,需要切换后端服务到对端的灾备集群。其中,切换程序包括误切换功能,当报代理少于3个,只报警不切换;期望代理数是n个,且n大于5,当实际上报数不足时,则认定网络不好,发出人工灾备切换建议。定期检查以每5秒一次,或者更少,以加快查询出问题的时间,减少业务影响。
[0029]其中,每个结点先收集取得所有集群的配置,再按集群进行循环,依次检查每一个集群,每个集群的多个地址,按当前次数求余后取得一个地址进行访问;检查结果上报给收集结点,如果集群检查都好的,按整体一次约定的时间适当等待;
[0030]104)切换步骤:根据投票结果,如果有集群的投票中有坏结果且超出阈值,灾备的切换程序自动进行流量切换。收集程序和切换程序的互相独立,不会互相干扰,从而提高系统可靠性。
[0031]还包括105)恢复步骤:在灾备的切换程序切换动作发生后,设置切换标志并通知相关人员,一般在低峰时手工切回,自然也可以根据实际需要,手动在高峰期切换,具体根据实际情况进行。
[0032]具体的代理结点调用的方法为ClusterAgent,实现对集群的判断检测,先从收集结点取得所有集群的配置,按集群进行循环,依次检查每一个集群。每个集群的多个地址,按当前次数求余后取得一个地址进行访问,检查结果上报给收集结点,如果有错误,还会上报错误的日志。其中集群都好的话,按整体一次约定的时间适当等待。
[0033][0034][0035]其中,收集结点取得所有集群的配置,得到json类似{"集群A":["http s://域名1:端口1/slh/checkCluster.do?kind=checkHealth&serverApplica本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于代理模拟app投票的自动灾备切换方法,其特征在于:具体包括如下步骤:101)部署代理结点步骤:在全国各地布署多个代理结点,并在每个结点部署多个模拟app,进行投票调试;102)预处理步骤:模拟app的代理程序启动,将从每个结点获取各集群投票信息;103)投票步骤:模拟app投票时,通过调用check_health接口,以实际服务器模拟业务进行读写操作;当有错误发生时,模拟app除了投票外,还会上传错误的结果,以供分析原因;其中,每个结点先收集取得所有集群的配置,再按集群进行循环,依次检查每一个集群,每个集群的多个地址,按当前次数求余后取得一个地址进行访问;检查结果上报给收集结点,如果集群检查都好的,按整体一次约定的时间适当等待;104)切换步骤:根据投票结果,如果有集群的投票中有坏结果且超出阈值,灾备的切换程序自动进行流量切换。2.根据权利要求1所述的一种基于代理模拟app投票的自动灾备切换方法,其特征在于:全国布有至少8个服务器点,以分布在广州、上海、北京的公有云服务上为主。3.根据权利要求1所述的一种基于代理模拟app投票的自动灾备切换方法,其特征在于:步骤102)中读取到集群...

【专利技术属性】
技术研发人员:金新华汤露兵李正磊徐克强
申请(专利权)人:杭州衣科信息技术股份有限公司
类型:发明
国别省市:

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

1