[发明专利]一种状态机复制方法有效
| 申请号: | 201210426104.X | 申请日: | 2012-10-30 |
| 公开(公告)号: | CN102981928A | 公开(公告)日: | 2013-03-20 |
| 发明(设计)人: | 张勇;唐家勇;邢春晓 | 申请(专利权)人: | 清华大学 |
| 主分类号: | G06F11/14 | 分类号: | G06F11/14;H04L29/06 |
| 代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
| 地址: | 100084 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 状态机 复制 方法 | ||
1.一种状态机复制方法,其特征在于,该方法包括步骤:
S1主结点接收客户端发送的更新请求,验证是否已更新;
S2如果否,则由主结点向从结点发送提案消息;
S3从结点接收提案消息后进行验证,如果验证成功则向其它结点发送批准消息;
S4结点收到所述批准消息后,判断该结点收到的批准消息是否超过总结点数一半,如果是,该结点执行更新请求,否则,该结点不执行更新请求,主结点更新请求执行完成后向客户端发送执行结果。
2.如权利要求1所述的一种状态机复制方法,其特征在于,所述提案消息包含向量时钟、视图编号、实例编号和更新请求,所述批准消息包含视图编号、向量时钟和实例编号。
3.如权利要求2所述的一种状态机复制方法,其特征在于,所述步骤S3的验证方法为与提案消息中的向量时钟和视图编号比较,如果一致则验证成功。
4.如权利要求1所述的一种状态机复制方法,其特征在于,该方法包括步骤:
S5主结点和从结点周期性的向其他结点广播心跳消息,各结点收到心跳消息后将其中的进展信息与本地进展信息进行比对,如果本地结点相对于广播信息落后,向广播心跳消息的结点发送请求,进行追赶。
5.如权利要求4所述的一种状态机复制方法,其特征在于,当结点收到的心跳消息超时时,对超时结点进行故障检测。
6.如权利要求5所述的一种状态机复制方法,其特征在于,该方法还包括:在主结点崩溃的情况下,在从结点中选举出新的主结点,进行步骤S1-S4。
7.如权利要求6所述的一种状态机复制方法,其特征在于,在从结点中选举出新的主结点具体包括:
S1’从结点检测到主结点心跳消息超时,发送选举准备信息给其他结点;
S2’其他结点接收到选举准备信息后启动选举定时器,进行主结点选举;
S3’主结点选举成功后被选举的结点进入主结点状态,其他结点进入从结点状态;
S4’当选举定时器超时而选举没有完成时,重复S1’-S3’步,直到新的主结点产生。
8.如权利要求1所述的一种状态机复制方法,其特征在于,该方法还包括步骤:当结点崩溃时对结点进行恢复。
9.如权利要求8所述的一种状态机复制方法,其特征在于,所述对结点进行恢复具体包括:
S1”待恢复结点进入恢复状态;
S2”待恢复结点根据本地磁盘上已持久化的更新请求序列进行恢复;
S3”待恢复结点向当前系统中所有正确结点发送恢复请求;
S4”其他结点接收到恢复请求后根据回复请求中的信息判断是否发送恢复响应;
S5”待恢复结点接收到恢复响应后,将恢复响应中的信息与本地信息比较并更新本地信息,待恢复结点收到超过总结点数一半的恢复响应时将待恢复结点转换为结点状态。
10.如权利要求1所述的一种状态机复制方法,其特征在于,该方法包括步骤:使用循环页表并以页为单位对数据存储空间进行顺序分配、持久化和释放。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210426104.X/1.html,转载请声明来源钻瓜专利网。





