[发明专利]分布式网络中消息同步的方法有效
申请号: | 201910966479.7 | 申请日: | 2019-10-12 |
公开(公告)号: | CN110708175B | 公开(公告)日: | 2021-11-30 |
发明(设计)人: | 姚宏宇 | 申请(专利权)人: | 北京友友天宇系统技术有限公司 |
主分类号: | H04L12/18 | 分类号: | H04L12/18;H04L12/26;H04L29/08 |
代理公司: | 上海市锦天城律师事务所 31273 | 代理人: | 汪妍瑜 |
地址: | 100193 北京市海淀区东*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 网络 消息 同步 方法 | ||
1.一种由计算机实现的方法,用于异步群组通讯中确保群组中的所有在线群组成员实现同步,该同步的定义为所有在线群组成员接收到给定顺序的相同的消息,该方法使用了状态机模型,每个群组成员执行的步骤包括:
1.1.群组成员进入刷新同步状态后,向所有群组成员广播其本地向量时钟;
1.2.从所有在线群组成员接收其向量时钟;
1.3.根据从其他群组成员接收的向量时钟计算承诺向量时钟,所述承诺向量时钟表示每个群组成员达到同步应具有的向量时钟,具有来自故障成员最多消息的群组成员将丢失的消息广播到群组以确保每个在线群组成员收到相同的消息;
1.4.根据承诺向量等待接收所有缺失消息;
1.5.通过向群组的所有成员广播完成消息来确认消息同步的完成;
1.6.在退出刷新方法的执行之前等待来自进程组其余成员的完成消息。
2.根据权利要求1所述的方法,其特征在于:所述向量时钟由群组成员的本地事件计数以及所有其他群组成员的事件计数组成,这些事件计数通过该群组成员接受的消息中含有的向量时钟来更新。
3.根据权利要求1所述的方法,其特征在于:承诺向量时钟含有每一个群组成员在开启刷新同步前本地事件计数,承诺向量也用于发现来自故障成员的丢失消息。
4.根据权利要求1所述的方法,其特征在于:开始刷新进程后,群组中的所有成员阻塞其进程发送应用程序的新消息,在计算了承诺向量时钟后,群组成员可以继续接收本地向量时钟以后直到承诺向量时钟之间的消息。
5.根据权利要求1所述的方法,其特征在于:群组中的所有成员广播包含其执行轮次计数和本地向量时钟的消息。
6.根据权利要求1所述的方法,其特征在于:在刷新方法执行期间发现群组的其他故障成员时,该方法重新启动刷新方法,广播含有递加的轮次计数和本地向量时钟的消息来通知群组的所有成员丢弃上一轮次刷新方法的执行。
7.根据权利要求1所述的方法,其特征在于:在等待丢失消息或完成消息的同时接收到包含更高执行轮次标识的消息后,该方法将重新启动刷新方法并更新执行轮次标识。
8.根据权利要求1所述的方法,其特征在于:在承诺向量之后得到的消息在当前视图中不传递。
9.一种计算机设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为通过执行所述存储器中的可执行指令实现权利要求1至8任一项所述的方法。
10.一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1至8任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京友友天宇系统技术有限公司,未经北京友友天宇系统技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910966479.7/1.html,转载请声明来源钻瓜专利网。