远程同步系统
远程同步系统软件是为了实现文件的远程备份。传统的文件备份是通过人工来完成的,不仅效率低,还容易出错,而对于安全性要求高的军工和航空航天领域,其核心系统的软件配置管理,一直以来都有冗余备份的需求,否则一旦配置管理服务器出现故障,整个项目都没有办法继续开展工作,严重影响型号研制周期。因此,迫切需求一种可靠性高、易于部署、易于使用且易于维护的双余度远程文件同步系统,来解决这一难题。
本文中的远程文件同步系统,正是基于以上原因设计开发的一款软件。远程同步文件系统使用基本的网络UDP协议,使用自定义的帧头、帧识码、总包数、当前包数、帧长度和补码的变长数据格式,采用高效补码校验和检查机制,在接收方发现校验不正确时,请求发送方重传数据,直至接收方正确的接收到数据后,通知发送方,发送方才会继续接下来的数据传输逻辑,即保证了同步的实时性,又保证了传续可靠性。远程文件同步系统部署方式如图1所示,在传统的配置管理系统中通过文件自动同步,实现了配置管理服务器的冗余,工作流程如图2所示。
图1 远程同步系统软件部署示意图
图2 远程同步系统工作流程
由图1所示的部署模式下,服务器A和服务器B均部署好远程同步系统软件启动后,两台服务器彼此建立起远程同步关系,配置当软件配置管理员将文档或代码提交至服务器A时,服务器A中运行的远程同步系统软件将以毫秒级时间内监控到服务器A中文件有更新或新增,然后往服务器B中运行的远程同步系统软件发送有变化的文件信息,服务器B中运行的远程同步系统软件发现本地本地文件是旧文件或不存在,则发出更新文件请求给服务器A,启动文件的传输更新任务直至更新结束,如图3所示。
图3服务器A自动远程同步至服务器B工作流程
同样的,当配置当软件配置管理员将文档或代码提交至服务器B时,服务器B中运行的远程同步系统软件将以毫秒级时间监控到服务器B中文件有更新或新增,然后往服务器A中运行的远程同步系统软件发送有变化的文件信息,服务器A中运行的远程同步系统软件发现本地本地文件是旧文件或不存在,则发出更新文件请求给服务器B,启动文件的传输更新任务直至更新结束,如图4所示。
图4服务器A自动远程备份至服务器B工作流程
最终通过远程同步系统软件分别部署于两台服务器上,形成两台服务器互为备份,互为影子服务器的的高可靠高效率实时双余度同步系统。