[发明专利]一种多节点协同打块的方法及系统有效
申请号: | 201810553319.5 | 申请日: | 2018-05-31 |
公开(公告)号: | CN110557416B | 公开(公告)日: | 2022-02-18 |
发明(设计)人: | 杨税令 | 申请(专利权)人: | 本无链科技(深圳)有限公司 |
主分类号: | H04L67/10 | 分类号: | H04L67/10;H04L67/60;H04L67/53;G06Q40/04 |
代理公司: | 北京挺立专利事务所(普通合伙) 11265 | 代理人: | 蔡宗慧 |
地址: | 518000 广东省深圳市南山区粤海街道高新区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 节点 协同 方法 系统 | ||
本发明公开了一种多节点协同打块的方法及其系统,本发明通过确定区块链网络中的节点作为协同节点,通过节点协同器与交易管理器的配合,使得协同节点能在一起有序的处理交易,处理性能好、出块速度快,通过交易管理器中的交易锁管理模块、序列管理模块、账务协同模块与时钟协同器结合,保证多个节点协同打块不出现数据紊乱,有序的进行打块,提高了出块效率,缩短了出块时间。
技术领域
本发明属于区块链领域,尤其涉及一种多节点协同打块的方法及系统。
背景技术
随着比特币的出现,区块链技术被越来越多的认识,区块链中的挖矿尤其受到很多技术迷的青睐,现有的区块链网络中,几乎所有的区块链都是各节点独立工作,这导致区块链的吞吐性能由单一节点的最大处理能力决定,而单一节点的计算能力、存储能力总是有限的,这导致区块链的性能被局限在单台计算机的处理性能之内;而实际业务应用中,业务总是无穷无尽的增长,需求和交易的能力也随着无穷尽的增长,但计算机的处理性能却无法做到无穷无尽的增长,这导致当前的区块链无法大规模应用到真实的业务生产环境中,那么如何让区块链的处理性能能突破单一计算机的计算能力成为一个急需解决的问题。
发明内容
本发明所要解决的技术问题在于提供一种处理性能好、出块速度快、能实现多个节点协同打块,提高打块效率的一种多节点协同打块的方法及系统。
为解决上述技术问题,本发明的技术解决方案是:
一种多节点协同打块的方法,包括如下步骤:
S1启动区块链节点,检查本地协同配置;
S2加入区块链网络中的协同节点;
S3启动主节点,主节点检测协同节点心跳;
S4主节点获取本周期未处理的交易,并为这些未处理交易标注序列;
S5主节点将已标注序列的未处理的交易进行相关性分组,并将分组中有交易顺序处理需要的交易进行上锁;
S6主节点将分组后的交易依次发送给各协同节点;
S7各协同节点开始处理交易,将每一条交易处理结果返回主节点,并等待主节点指示;
S8主节点收到交易后保存处理结果,并将下一条交易的锁的释放指令发给协同节点,各协同节点继续开始处理交易,并将交易处理结果返回主节点,并等待主节点指示,在S8内依次循环;
S9当协同节点交易处理过程中遇到交易全部处理完毕,而主节点还没有新的交易发来时,暂停交易,当协同节点交易处理过程中遇到时钟指令本周期结束时,立即停止交易;
S10协同节点交易停止后,主节点将协同节点处理的交易打入区块,主节点将区块签名后向网络广播,完成打块,进入下一个区块周期循环。
进一步的,所述的步骤S2加入区块链网络中的协同节点的方法是:
S21发布需求协同的请求,检查本地节点是否为主节点;
S22若本地节点是主节点则直接开始检测协同节点心跳,若本地节点不是主节点,则查找配置的主节点;
S23与主节点建立连接,并开始发送心跳包;
S24发送了心跳包的本地节点切换为协同模式,开始主节点的任务调度。
进一步的,所述主节点检测协同节点心跳的方法是
S31主节点启动监听心跳包,监听其他节点发送的心跳包;
S32主节点检查自己的协同列表,当列表不为空时,依次检查列表中的网络状态;
S33判断节点是否能与主节点网络连接,若不能,则从协同列表中去除,若能则建立连接;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于本无链科技(深圳)有限公司,未经本无链科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810553319.5/2.html,转载请声明来源钻瓜专利网。