[发明专利]应用程序主备切换方法及系统有效
申请号: | 201811551837.X | 申请日: | 2018-12-19 |
公开(公告)号: | CN109525436B | 公开(公告)日: | 2022-09-16 |
发明(设计)人: | 陈晨;居燕峰;王雷;李福;林克;陆向东;林俊德;朱坚 | 申请(专利权)人: | 福建新大陆软件工程有限公司 |
主分类号: | H04L41/0663 | 分类号: | H04L41/0663 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 350015 福*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序 切换 方法 系统 | ||
本发明公开了一种应用程序主备切换方法及系统,由HaKeeper服务读取配置文件,获取目标应用的操作脚本;HaKeeper根据Lock访问ZooKeeper目录,通过获取锁判断目标应用是否允许运行于当前主机;如获取锁失败,停止应用或确认应用关闭后再次尝试获得锁;如获取锁成功,启动应用或确认应用开启;定时的不断检测应用的运行状态;如应用运行状态异常,由lock内嵌模块释放锁,以允许其他主机上运行的HaKeeper获得目标应用的锁。本方案可自动监控各类应用,发现目标应用故障或失效后立即进行快速切换或重启,提升了工作效率的同时降低了人工成本,支持所有可运行于linux之上的应用,具有良好的通用性。
技术领域
本发明涉及计算机技术领域,特别涉及一种应用程序主备切换方法及系统。
背景技术
随着大数据、云计算、数据仓库等领域的不断发展,各类服务应用、数据处理常驻应用日益增多。分布式应用关键节点如何避免单点故障,不间断服务如何减少故障等待时间,各类数据处理的常驻应用如何保证长期持续运转,是各企业共同面临的问题。
目前市面上暂无提供应用主备切换的通用工具,各企业在面对应用不间断服务的保障方案时,往往借助于维护团队来监控应用状态,在应用失效时手动恢复,或在应用中嵌入高耦合、非通用的处理机制,实现针对于特定应用的故障切换。但是通过人工维护或非通用的处理机制的方式存在着以下缺点:1、人工成本较高,且需要持续投入;2、人工处理在可靠性、及时性、持续性等方面难以保证;3、不同企业及应用,对于维护工作难以形成标准、统一的处理方案;4、如针对不同应用开发主备切换特性,将产生重复的开发成本。
发明内容
本发明要解决的技术问题是如何提供一种通用的、节约人工开发成本的应用程序主备切换方法及装置。
为了解决上述技术问题,本发明的技术方案为:
一种应用程序主备切换方法,包括步骤:
S10:启动HaKeeper服务,由HaKeeper服务读取配置文件,获取目标应用的操作脚本;
S20:HaKeeper根据Lock访问ZooKeeper目录,通过获取锁判断目标应用是否允许运行于当前主机;
S30:如获取锁失败,停止应用或确认应用关闭后执行步骤S20;
S40:如获取锁成功,启动应用或确认应用开启后定时的检测应用的运行状态;
S50:如应用运行状态异常,由lock内嵌模块释放锁,以允许其他主机上运行的HaKeeper获得目标应用的锁。
优选地,步骤S20包括:
S21:通过配置确认需要管控的目标应用;
S22:为每一目标应用分别创建lock锁,并提交给Zookeeper,lock锁为临时序列Znode;
S23:Zookeeper根据目标应用目录下当前最大序号给lock锁设定序号;
S24:查询目标应用目录下最小序号锁节点,与内存中所保存的锁节点名对比,如名称一致,则判定获得目标应用的运行锁;
S25:如名称不一致,判断目标应用运行锁获取失败。
优选地,步骤S50中释放锁通过ZooKeeper在目标应用目录下删除应用运行锁来实现。
优选地,步骤S30包括:
S31:检查目标应用是否运行于当前主机;
S32:当目标应用未运行于当前主机,则执行步骤S20;
S33:当目标应用已运行于当前主机,则调用应用停止脚本停止目标应用后执行步骤S20。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建新大陆软件工程有限公司,未经福建新大陆软件工程有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811551837.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电网业务服务器运行状态预警方法
- 下一篇:配电网通信节点恢复方法和系统