[发明专利]区块链交易处理系统和方法有效
申请号: | 202080006241.0 | 申请日: | 2020-08-03 |
公开(公告)号: | CN113168652B | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 田世坤 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06Q40/04 | 分类号: | G06Q40/04;G06F21/64 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 周嗣勇 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 交易 处理 系统 方法 | ||
本文公开了用于处理区块链交易的方法、系统和装置,包括编码在计算机存储介质上的计算机程序。所述方法之一包括:接收M个区块链交易,并且使用第一线程池的K个线程并行执行所述M个区块链交易中的N个区块链交易。第二线程池专用于访问存储在存储系统中的区块链数据。对于分配给K个线程中的每个线程的区块链交易,每个区块链交易使用一个或多个协程,使得区块链交易通过使用协程被异步地执行。生成区块链区块以包含M个区块链交易,并将该区块链区块添加到存储系统所存储的区块链中。
技术领域
本文涉及处理区块链交易。
背景技术
随着区块链技术的快速发展,区块链技术的应用或服务场景不断扩展,例如,在司法认证、可追溯性、发票、供应链金融等方面。各种区块链服务生成的数据量也在快速增长。大规模区块链数据(例如,针对大规模账户生成的数据、针对单个账户的大量状态数据、以及针对单个区块链的大量区块数据)的处理和存储需要大量的计算机资源,例如运算/计算资源、存储资源和网络资源。此外,数据规模的增长,尤其是在区块链系统已长期运行之后,进一步增加了对计算资源的需求。
这样,需要一种更有效的处理区块链数据和处理区块链交易的方式,以满足各种区块链应用不断增长的需求。
发明内容
主题所描述的实施例可以单独地或组合地包括一个或多个特征。
例如,在一个实施例中,一种用于处理区块链交易的方法包括:接收要由区块链网络节点执行的M个区块链交易,其中,M是大于1的整数。当执行所述M个区块链交易时,所述区块链网络节点从所述M个区块链交易中识别出N个区块链交易,其中N小于或等于M。将所述N个区块链交易分配为由第一线程池的K个线程并行执行,其中,将所述N个区块链交易中的相应NK个区块链交易分配给相应的第K线程。然后,通过所述K个线程并行执行所述N个区块链交易。通过所述K个线程并行执行所述N个区块链交易包括:对于N个区块链交易中的分配给第一线程池中的第一线程的N1个区块链交易,识别P1个协程,其中P1大于或等于N1。通过异步地执行P1个协程来执行所述N1个区块链交易。异步地执行所述P1个协程包括使用第二线程池访问存储在存储子系统中的区块链数据。在执行所述M个区块链交易后,生成包含M个区块链交易的区块链区块,并将所述区块链区块添加到存储子系统内的区块链中。
在一些实施例中,这些一般和具体方面可以使用系统、方法或计算机程序或系统、方法和计算机程序的任何组合来实现。前述和其他描述的实施例可各自可选地包括以下方面中的一个或多个。
在一些实施例中,异步地执行所述P1个协程包括使用第二线程池访问存储在所述存储系统中的区块链数据,其中,所述第二线程池不同于所述第一线程池。
在一些实施例中,所述第二线程池专用于所述存储系统。
在一些实施例中,访问存储在所述存储系统中的区块链数据包括以下一项或多项:读取存储在所述存储系统所存储的所述区块链中的数据;以及将新数据写入所述区块链。所述区块链数据包括区块数据、状态数据、索引数据或流数据中的一个或多个。
在一些实施例中,所述M个区块链交易中的一个或多个与所述N个区块链交易同步地执行。
在一些实施例中,基于所述N1个区块链交易识别要异步执行的P1个协程包括:针对所述N1个区块链交易中的每个区块链交易,识别要异步执行的一个或多个协程。
在一些实施例中,所述N1个区块链交易包括一系列操作。所述一系列操作包括第一操作和在所述第一操作之后的第二操作。所述第一操作包括访问所述存储子系统的输入/输出(I/O)操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202080006241.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:钛复合材
- 下一篇:EGFR抑制剂及其应用