1.什么是双机热备
使用两台,互相备份,共同执行同一服务。当一台服务器出现故障时,可以由另一台服务器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务。
2.双机热备方案
我们现在采用的是纯软件形式的双机热备,即通过硬编码手动同步主备机数据,从而实现主备机数据一致以及主备切换功能。
3.如何设计双机热备
设计双机热备的主要方向就是面向数据的同步,同步的数据始终源自最新的数据源(通过比对时间)。任何的双机切换操作不应该影响数据的准确性。
按照这个原理,衍生出两套方案:
方案1.加入数据同步时的时间判断
方案2.此方案将双机热备模块从通讯中剥离开,通过整理热备模块和存储模块,提升热备效率提升稳定性。此方案配合数据存储模块的批处理方案效果更佳。其目的是在于对热备模块的重新整理,降低通讯模块和热备模块的耦合,其中采用dll形式在通讯程序中实例化或者以服务形式单独执行皆可。
这是我们在项目中自己实现双机热备的基本原理,目前以第一种方案运行。希望大家批评指正。