[发明专利]一种故障节点检测方法及系统、设备和可存储介质有效
申请号: | 201810918776.X | 申请日: | 2018-08-13 |
公开(公告)号: | CN109391510B | 公开(公告)日: | 2021-12-10 |
发明(设计)人: | 何玉斌;王志文;吴思进 | 申请(专利权)人: | 杭州复杂美科技有限公司 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L12/26 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 故障 节点 检测 方法 系统 设备 存储 介质 | ||
本发明提供一种故障节点检测方法及系统、设备和存储介质,其特征在于,包括:当第一区块执行失败时,将第一节点标记为故障节点;其中,所述第一区块从所述第一节点同步获得;将所述故障节点记录到故障节点列表中;其中,所述故障节点列表用于在进行区块同步时不再向所记录的故障节点进行同步。本发明通过将执行不通过的节点放入故障节点列表中,使区块同步时过滤掉同步节点中的故障节点,提高了区块同步的效率。
技术领域
本申请涉及区块链游戏技术领域,具体涉及一种故障节点检测方法及系统、设备和存储介质。
背景技术
目前常见的区块同步方案为本节点向所连接的节点请求区块然后执行,如果从某个分叉节点请求过来的区块在本节点可能执行不通过,然后再向其他节点请求此高度的区块继续执行。然而在接下来进行区块请求时,还会向该故障节点发送请求,然后还是不通过,再向其他节点请求,这样在不能过滤故障节点的前提下同步区块的效率很低。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种能够过滤故障节点的故障节点检测方法及系统、设备和存储介质。
第一方面,本发明提供一种故障节点检测方法,包括:
当第一区块执行失败时,将第一节点标记为故障节点;其中,第一区块从第一节点同步获得;
将故障节点记录到故障节点列表中;
其中,故障节点列表用于在进行区块同步时不再向所记录的故障节点进行同步。
进一步,当第一区块执行失败时,将第一节点标记为故障节点还包括:记录第一区块的故障区块高度、故障区块哈希和故障节点地址;
将故障节点记录到故障节点列表中还包括:将故障区块高度、故障区块哈希和故障节点地址记录到故障节点列表中,其中所述故障节点地址用于查找出现故障的节点。
进一步,当第一区块执行失败时,将第一节点标记为故障节点之前还包括:
执行第一区块前,在相同区块高度下校验第一区块的哈希值与故障节点列表记录的故障区块哈希是否相同:是,则将第一节点标记为故障节点,并不再执行第一区块。
进一步,定时向第一节点获取故障区块高度的第一区块哈希;校验第一区块哈希与故障区块哈希是否相同:否,则将第一节点从故障节点列表中移除。
进一步,定时校验当前节点在故障区块高度的第二区块哈希与故障区块哈希是否相同:
是,则将第一节点从故障节点列表中移除;
否,则执行定时向第一节点获取故障区块高度的第一区块哈希以及后续步骤。
第二方面,本发明提供一种同步方法,包括:
在同步节点列表中过滤按照故障节点检测方法生成的故障节点列表所记录的故障节点;
根据过滤后的同步节点列表进行区块同步。
第三方面,本发明提供一种故障节点检测系统,包括:
标记单元,配置用于当第一区块执行失败时,将第一节点标记为故障节点;其中,第一区块从第一节点同步获得;
记录单元,配置用于将故障节点记录到故障节点列表中;其中,故障节点列表用于在进行区块同步时不再向所记录的故障节点进行同步。
进一步,标记单元还包括第一记录子单元,配置用于记录第一区块的故障区块高度、故障区块哈希和故障节点地址;记录单元还包括第二记录子单元,配置用于将故障区块高度、故障区块哈希和故障节点地址记录到故障节点列表中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州复杂美科技有限公司,未经杭州复杂美科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810918776.X/2.html,转载请声明来源钻瓜专利网。