一种基于分布式锁的双机热冗余方法与流程

文档序号:37587329发布日期:2024-04-18 12:16阅读:11来源:国知局
一种基于分布式锁的双机热冗余方法与流程

本发明涉及工业自动化,尤其是,本发明涉及一种基于分布式锁的双机热冗余方法。


背景技术:

1、在工业控制系统通常由上位机服务器与下位机dcs构成。dcs(distributedcontrol system,分布式控制系统)与上位机(服务器)上位机软件,广泛应用于工业自动化领域,随着工业过程的复杂性和规模的增长,上位机(服务器)需要处理越来越多的数据并提供更高的可靠性和可扩展性。在工业控制系统中,上位机服务器处理一些历史数据、关系数据、以及运行上位机软件。

2、由于dcs常常采用服务器/客户机结构,服务器的稳定性对dcs至关重要,dcs具有较高的稳定性而上位机服务器可能受外界因素影响,或者因自身性能问题、长时间运行导致宕机。从而影响系统的稳定性和可靠性。所以需要设置如何预防服务器宕机的方式的开发,例如中国专利实用新型专利cn219740038u涉及一种双冗余结构的dcs服务器电源快速切换装置,属于电源设备技术领域,包括主服务器、备用服务器、第一输入端和第二输入端;第一输入端通过第一连接回路和第二连接回路分别与主服务器和备用服务器电连接;第二输入端通过第三连接回路和第四连接回路分别与主服务器和备用服务器电连接;第一连接回路和第三连接回路相互并联,第二连接回路和第四连接回路相互并联;第一连接回路上设置有静态开关一,第二连接回路上设置有静态开关二,第三连接回路上设置有静态开关三,第四连接回路上设置有静态开关四;还包括控制模块一和控制模块二。上述实用新型避免了由于单一开关故障造成服务器失灵,能够有效防止切换过程中造成负载短时停电。

3、但是上述双冗余结构的dcs服务器结构存在以下缺点:备用服务器仅仅只是与主服务器简单电连接,只能保证备用服务器可以及时被供电启用,但是主服务器除了断电之外,还可能是自身性能问题造成的宕机,而主服务器与备用服务器之间数据难以互通,备用服务器即便启动之后也由于数据缺失,无法与dcs之间正常数据通信,无法接管主服务器的业务功能,造成的业务停止将带来无法估量的损失。

4、因此为了解决上述问题,设计一种合理的基于分布式锁的双机热冗余方法对我们来说是很有必要的。


技术实现思路

1、本发明的目的在于提供一种基于分布式锁的双机热冗余方法,利用分布式锁进行主服务器和从服务器的管理,通过建立主服务器和从服务器之间的数据互通,从服务器读取主服务器的binlog中的最后一次事件位置,在主服务器宕机时,用户业务和数据也可迅速切换到健康的从服务器上,保证了整个系统对外服务的正常持续运行,有效避免业务停止带来损失。

2、为达到上述目的,本发明采用如下技术方案得以实现的:

3、一种基于分布式锁的双机热冗余方法,适用于基于分布式锁的双机热冗余系统,系统包括主服务器、从服务器和dcs;所述主服务器和从服务器均与所述dcs电连接,所述主服务器和从服务器电连接;方法包括以下步骤:

4、s1:主服务器的上位机软件开始工作时,启动从服务器;

5、s2:主服务器的上位机软件配置锁位号到dcs;

6、s3:每间隔预定时间,主服务器向dcs输出锁位号,从服务器从dcs获取主服务器输出锁位号;

7、s4:从服务器判断获取的主服务器输出锁位号与上一次获取的主服务器输出锁位号是否一致;若是则从服务器读取主服务器的binlog中的最后一次事件位置,返回步骤s3;反之则主服务器宕机,执行步骤s5;

8、s5:运行从服务器中的上位机软件,从服务器中的上位机软件根据binlog中的最后一次事件位置,进行dcs的数据处理。

9、作为本发明的优选,执行步骤s5时,从服务器中的上位机软件与主服务器中的上位机软件相同。

10、作为本发明的优选,执行步骤s1时,主服务器的上位机软件配置站点位到dcs,dcs获取主服务器标识写入至站点位中;

11、执行步骤s5时,dcs获取从服务器标识写入至站点位中。

12、作为本发明的优选,执行步骤s1至s5时,主服务器和从服务器均从dcs中读取站位点数据,并判断自身标识是否与站位点数据相同,若是则拥有向dcs中读值和写值的权限;反之则仅拥有读值的权限。

13、作为本发明的优选,执行步骤s2时,主服务器的上位机软件配置锁位号到dcs,建立锁位号序号表;

14、执行步骤s3时,每间隔预定时间,主服务器向dcs输出锁位号,并读取锁位号序号表,得到输出锁位号的下一个值,作为下一次主服务器向dcs输出的锁位号。

15、作为本发明的优选,所述锁位号序列表中包括至少2个锁位号。

16、作为本发明的优选,在执行步骤s1时,主服务器的上位机软件开始工作时,建立二进制日志,对数据库的所有更新都作为binlog事件写入二进制日志。

17、作为本发明的优选,在执行步骤s4时,从服务器获取的主服务器输出锁位号与上一次获取的主服务器输出锁位号不一致时,主服务器宕机,发出故障警报。

18、作为本发明的优选,在执行步骤s5之后,主服务器维修更换之后,重新与从服务器进行电连接,此时主服务器作为新的从服务器,从服务器作为新的主服务器,返回执行步骤s2。

19、作为本发明的优选,执行步骤s1时,主服务器和从服务器均建立有数据库,且主服务器和从服务器的数据库热备数据库为镜像复制。

20、本发明一种基于分布式锁的双机热冗余方法有益效果在于:利用分布式锁进行主服务器和从服务器的管理,通过建立主服务器和从服务器之间的数据互通,从服务器读取主服务器的binlog中的最后一次事件位置,在主服务器宕机时,用户业务和数据也可迅速切换到健康的从服务器上,保证了整个系统对外服务的正常持续运行,有效避免业务停止带来损失。



技术特征:

1.一种基于分布式锁的双机热冗余方法,适用于基于分布式锁的双机热冗余系统,系统包括主服务器、从服务器和dcs;所述主服务器和从服务器均与所述dcs电连接,所述主服务器和从服务器电连接;

2.根据权利要求1所述的一种基于分布式锁的双机热冗余方法,其特征在于:

3.根据权利要求1所述的一种基于分布式锁的双机热冗余方法,其特征在于:

4.根据权利要求3所述的一种基于分布式锁的双机热冗余方法,其特征在于:

5.根据权利要求1所述的一种基于分布式锁的双机热冗余方法,其特征在于:

6.根据权利要求5所述的一种基于分布式锁的双机热冗余方法,其特征在于:

7.根据权利要求1所述的一种基于分布式锁的双机热冗余方法,其特征在于:

8.根据权利要求1所述的一种基于分布式锁的双机热冗余方法,其特征在于:

9.根据权利要求1所述的一种基于分布式锁的双机热冗余方法,其特征在于:

10.根据权利要求1所述的一种基于分布式锁的双机热冗余方法,其特征在于:


技术总结
本发明提供一种基于分布式锁的双机热冗余方法,涉及工业自动化技术领域,包括以下步骤:S1:主服务器工作时,启动从服务器;S2:主服务器的上位机软件配置锁位号;S3:主服务器输出锁位号,从服务器获取锁位号;S4:从服务器判断获取的锁位号与上一次锁位号是否一致;若是则从服务器读取主服务器的binlog事件;反之则主服务器宕机,执行S5;S5:从服务器中进行DCS的数据处理。本发明利用分布式锁进行主服务器和从服务器的管理,从服务器读取主服务器的binlog中的最后一次事件位置,在主服务器宕机时,用户业务和数据迅速切换到从服务器上,保证了整个系统对外服务的正常持续运行,有效避免业务停止带来损失。

技术研发人员:张兴权,魏捷,薛家威,张新宇,罗江浩,刘鹏,曾繁林,庄学波,颜锟,黄章荣
受保护的技术使用者:中控技术股份有限公司
技术研发日:
技术公布日:2024/4/17
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1