全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210728702.6 (22)申请日 2022.06.24 (71)申请人 上海树图区块链研究院 地址 200032 上海市徐汇区小木桥路528号 203-51室 (72)发明人 明哲 伍鸣 龙凡 杨光 李辰星  李沛伦  (74)专利代理 机构 上海天辰知识产权代理事务 所(特殊普通 合伙) 31275 专利代理师 吴世华 尹一凡 (51)Int.Cl. G06F 16/23(2019.01) G06F 9/46(2006.01) G06F 9/52(2006.01) G06Q 20/38(2012.01) (54)发明名称 解决区块链节点并行化处理交易时共识不 一致问题的方法 (57)摘要 一种解决区块链节点并行化处理交易时共 识不一致问题的方法, 包括获取在N个节点上需 并行化处理的M个交易所形成的交易集, 并根据 交易之间的依赖关系对每个交易建立存储快照 版本SV并初始化; 当每个节点并行化执行交易 时, 执行交易的线程会首先收到一份存储快照, 快照包含当前交易与其他交易依赖关系以及最 近一次交易提交的写入结果; 当节 点线程完成一 个交易处理并需提交时, 节点会判断该交易是否 满足存储快照版本SV中规定的提交要求, 如果满 足则提交, 不满足则中止此次交易的处理。 由于 存储快照版本全局唯一且提交和中止规则一致, 因此, 本发明可以使M个交易在N个节点上不仅最 后提交顺序一致, 中止的次序和次数也是一致 的。 权利要求书2页 说明书7页 附图4页 CN 115203218 A 2022.10.18 CN 115203218 A 1.一种解决区块链节点并行化处理交易时共识不一致问题的方法, 用于通过多核多线 程的方式来并行化处 理智能合约交易, 其特 征在于, 包括如下步骤: 步骤S1: 获取在N个节点上需并行化处理的M个交易所形成的交易集, 并根据交易之间 的依赖关系对每个交易建立存储 快照版本SV, 并初始 化所述存储快照版本SV; 其中, 所述存 储快照版本SV的存储条目包括M个交易在节点中预先编排的处理顺序和最近一次交易提交 的写入结果, , 初始化时, 所述 最近一次交易的提交结果 为空; 步骤S2: 当节点通过多线程并行化执行交易时, 所述节点线程会首先收到一份对应交 易的快照, 所述快照包含在所述对应交易的依赖关系以及最近一次交易的提交记录; 其中, 如果单个所述交易执行多次, 所述存储 快照版本SV已编排好多次执行时该 交易依赖 关系以 及最近一次提交记录, 所述存储快照版本SV的编排根据各 交易期望的执行时间以及交易之 间的相互依赖关系进行排序, 且所述存 储快照版本SV全局唯一, 对所有节点可 见; 步骤S3: 当进行并行化处理所述交易集中的一个交易 时, 各节点线程根据分配的交易, 判断是否满足所述存储快照版本SV中规定的提交要求, 如果满足则提交, 不满足则中止此 次交易的处 理, 等待下次重新处 理; 其中, 所述 提交要求中包括: 对于某个交易的执行, 各节点线程调度程序 须允许交易先于当前交易的所述存储快照 版本SV的交易执 行结果写入到存 储条目中; 对于某个交易的执行, 各节点线程调度程序不允许后于当前交易的所述存储快照版本 SV的交易执行结果写入到存储条目中, 即使当前 交易已经 处理完, 处于提交状态, 也不被允 许写入。 2.根据权利要求1所述的解决区块链节点并行化处理交易时共识不一致问题的方法, 其特征在于, 在所述 步骤S2中的交易期望执 行的时间, 可通过Gas  Limit进行评估。 3.根据权利要求2所述的解决区块链节点并行化处理交易时共识不一致问题的方法, 其特征在于, 每个节点的激励机制和/或惩罚机制的参考指标为交易的成功处理以及丢弃 次数。 4.根据权利要求1所述的解决区块链节点并行化处理交易时共识不一致问题的方法, 其特征在于, 所述交易之间的相互依赖关系, 通过启发式的方式来评估。 5.根据权利要求1所述的解决区块链节点并行化处理交易时共识不一致问题的方法, 其特征在于, 所述启发式的方式为静态分析。 6.一种区块链智能合约的交易执行装置, 采用多核多线程的方式来并行化处理智能合 约交易, 其特 征在于, 包括: 初始化模块, 获取在N个节点上需并行化处理处理的M个交易所形成的交易集, 建立存 储快照版本SV, 并初始 化所述存储快照版本SV; 其中, 所述存储快照版本SV的存储 条目包括 M个交易在节点上预先编排的处理顺序和节点上最近一次交易提交的写入结果, 初始化时, 所述最近一次交易 提交的写入结果 为空; 快照产生模块, 当节点通过多线程并行化执行多个交易时, 所述节点线程会提前收到 一份快照, 所述快照包含在所述交易之前的所有交易的所述存储快照版本SV; 其中, 如果单 个所述交易执行多次, 所述存储 快照版本SV编排好了 之前多次执行的依赖 关系以及最近一 次交易的写入记录, 所述存储快照版本SV的编排根据各 交易期望的执行时间以及交易之间 的相互依赖关系进行排序, 且所述存 储快照版本SV全局唯一, 对所有节点可 见;权 利 要 求 书 1/2 页 2 CN 115203218 A 2交易执行模块, 当进行并行化处理所述交易集中的一个交易时, 各节点线程根据分配 的交易, 判断是否满足所述存储快照版本SV中规定的提交要求, 如果满足则提交, 不满足则 中止此次交易的处 理, 等待下次重新处 理。 7.一种可读存储介质, 存储有可执行指令, 该可执行指令用于执行如权利要求1~5任 一项所述的解决区块链 节点并行化处 理交易时共识不 一致问题的方法。 8.一种数据处理终端, 用于作 为P2P网络的共识节点, 接收、 共识验证并存储所述P2P网 络中的区块, 所述数据处 理终端包括: 如权利要求8所述的可读存 储介质; 处理器, 该处理器调取并执行所述的可读存储介质中的可执行指令, 以执行解决区块 链节点并行化处 理交易时共识不 一致问题的方法。 9.一种P2P网络, 其特征在于, 所述P2P网络的共识节点为权利 要求8所述的数据处理终 端。权 利 要 求 书 2/2 页 3 CN 115203218 A 3

PDF文档 专利 解决区块链节点并行化处理交易时共识不一致问题的方法

文档预览
中文文档 14 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共14页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 解决区块链节点并行化处理交易时共识不一致问题的方法 第 1 页 专利 解决区块链节点并行化处理交易时共识不一致问题的方法 第 2 页 专利 解决区块链节点并行化处理交易时共识不一致问题的方法 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-24 00:49:26上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。