[发明专利]一种区块处理任务的控制方法和装置有效
申请号: | 201910711607.3 | 申请日: | 2018-09-13 |
公开(公告)号: | CN110457123B | 公开(公告)日: | 2021-06-15 |
发明(设计)人: | 刘长辉 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F16/27;G06F16/23;G06F16/21;H04L29/08;H04L12/819 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 李娟;王宁宁 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 区块 处理 任务 控制 方法 装置 | ||
本发明公开了一种区块处理任务的控制方法和装置,属于区块链技术领域,本发明提供的方法及装置中,通过将区块处理任务分成连续的多级处理子任务,且为每一级处理子任务配置至少一个对应级别的执行模块,以及每个非最末一级执行模块对当前待处理区块执行本级处理子任务后,将当前待处理区块的区块处理任务添加到与下一级执行模块之间配置的中间任务队列中,每个非第一级执行模块对当前待处理区块执行本级处理子任务后,将中间任务队列中提取的任务对应的区块作为下一个待处理区块,最末一级执行模块将处理结果同步到数据库中,实现了并行处理多个待处理区块的区块处理任务,进而加快了区块间区块处理任务的处理速度。
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块处理任务的控制方法和装置。
背景技术
目前的区块链技术普遍存在交易性能差的问题,较低的性能无法满足现实场景中的应用需求。性能问题主要体现在两个方面:(1)共识过程复杂冗长;(2)链式数据串行处理效率较低。
在联盟链中只有经过许可的用户才能加入区块链,例如超级账本(HyperledgerFabric),其共识过程相对比特币和以太坊等公有链更加简单高效,因此在Fabric等联盟链中链式数据串行处理的低效率问题显的尤为突出。区块链技术中,由于区块之间的链式依赖,现有技术在处理区块的提交过程中使用单线程串行执行的方式,即:一条链上的多个区块的提交必须遵循严格的顺序,后一个区块必须等待前一个区块提交完成后才能提交,同时后一个区快必须链接前一个区块形成有序链条,整个过程串行执行。然而这种串行处理方式显然不能充分发挥现代中央处理器(CPU)的多核性能,区块提交过程耗时长,交易吞吐率低,无法满足现实场景中的应用需求。
因此,如何加快区块提交的处理过程,提高区块处理任务的处理效率是首要考虑的问题之一。
发明内容
本发明实施例提供一种区块处理任务的控制方法和装置,用以提高区块处理任务的处理效率。
第一方面,本发明实施例提供一种区块处理任务的控制方法,将区块处理任务分成连续的多级处理子任务,对应每级处理子任务配置至少一个对应级别的执行模块;以及所述方法包括:
至少一个非最末一级执行模块对当前待处理区块执行本级处理子任务后继续对下一个待处理区块执行本级处理子任务,其中:
最末一级执行模块对当前待处理区块执行最末一级处理子任务,并将处理结果同步到数据库中。
通过采用上述方法,有效实现了区块的并行处理,不仅提高了区块的处理效率,而且还提升了区块链系统的交易吞吐率,满足更多应用对区块链的性能需求。
第二方面,本发明实施例提供一种区块处理任务的控制装置,包括:
拆分模块,用于将区块处理任务分成连续的多级处理子任务,对应每级处理子任务配置至少一个对应级别的执行模块;
至少一个非最末一级执行模块,用于对当前待处理区块执行本级处理子任务后继续对下一个待处理区块执行本级处理子任务;
最末一级执行模块,用于对当前待处理区块执行最末一级处理子任务,并将处理结果同步到数据库中。
一方面,本发明实施例提供一种区块处理任务的控制方法,将区块处理任务分成连续的多级处理子任务,对应每级处理子任务配置至少一个对应级别的执行模块,相邻执行模块之间均配置有中间任务队列,且第一级执行模块配置有区块任务队列,区块任务队列中的任务是根据待处理区块的接收顺序按照先入先出的原则写入的;以及方法包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910711607.3/2.html,转载请声明来源钻瓜专利网。