区块链交易信息管理方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:23604696 阅读:15 留言:0更新日期:2020-03-28 05:47
本申请实施例属于区块链技术领域,涉及一种区块链交易信息管理方法、装置、计算机设备及存储介质,方法包括获取当前区块高度Hx和本地区块高度H;根据当前区块高度Hx和本地区块高度H,判断区块链账本与本地账本的同步状态;若同步状态为已同步且可读R,或者,同步状态为已同步S,则对交易进行实时监测,当监测到有新交易产生时,获取新交易的交易数;根据新交易的交易数计算出当前交易总数信息,并将当前交易总数信息更新到本地账本;在接收到交易总数查询请求时,基于同步状态,通过预设接口从本地账本中读取对应的交易总数信息,并将读取到的交易总数信息作为查询结果。本申请提升了查询区块链交易总数信息的效率以及即时性。

Blockchain transaction information management methods, devices, computer equipment and storage media

【技术实现步骤摘要】
区块链交易信息管理方法、装置、计算机设备及存储介质
本申请属于区块链
,尤其涉及一种区块链交易信息管理方法、装置、计算机设备及存储介质。
技术介绍
区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块集合,其中每一个数据块包含了相应的智能合约的交易信息,这些智能合约的交易信息可以用于验证信息的有效性(防伪功能)以及生成下一个区块。随着区块链的这些优势逐渐地显示,越来越多的电子交易采用区块链来进行,区块链网络变得越来越复杂,因此需要管理端定期对区块链进行维护。例如,管理端需要对交易总量进行查询监控,当前采用的方式主要是通过对每个区块记载的交易信息进行遍历统计,从区块存储中实时遍历所有区块的方式计算出交易总数,以此来获取交易总量的信息,并且管理端每次都需要实时遍历所有区块,因此通过此方式获取交易总数的速度非常慢,很难保证交易总数信息的即时性,而随着区块链中区块数量不断地增多,采用这种方式进行交易总量的查询效率越来越低。
技术实现思路
本申请实施例的目的在于提出一种区块链交易信息管理方法、装置、计算机设备及存储介质,以解决现有的区块链信息查询方式即时性差、效率低的问题。为了解决上述技术问题,本申请实施例提供一种区块链交易信息管理方法,采用了如下所述的技术方案:获取当前区块高度Hx和本地区块高度H,其中,当前区块高度Hx为Peer节点启动时区块链账本中区块的高度,本地区块高度H为Peer节点启动时本地账本中区块的高度;根据当前区块高度Hx和本地区块高度H,判断区块链账本与本地账本的同步状态;若同步状态为已同步且可读R,或者,同步状态为已同步S,则对交易进行实时监测,当监测到有新交易产生时,获取新交易的交易数;根据新交易的交易数计算出当前交易总数信息,并将当前交易总数信息更新到本地账本;在接收到交易总数查询请求时,基于同步状态,通过预设接口从本地账本中的历史交易总数信息或当前交易总数信息中读取对应的交易总数信息,并将读取到的交易总数信息作为查询结果,其中,查询结果为历史交易总数信息或当前交易总数信息。进一步的,获取当前区块高度Hx和本地区块高度H具体包括:在监测到Peer节点启动时,运行预设的交易总数状态机,获取时区块链账本中当前区块高度Hx;从本地账本中获取本地区块高度H。进一步的,根据当前区块高度Hx和本地区块高度H,判断区块链账本和本地账本的同步状态具体包括:当当前区块高度Hx=0时,确定同步状态为同步且可读R;当当前区块高度Hx>0时,判断本地区块高度H是否与当前区块高度Hx一致;若本地区块高度H与当前区块高度Hx一致,则确定同步状态为已同步且可读R,反之,则确定同步状态为未同步U。进一步的,根据当前区块高度Hx和本地区块高度H,判断区块链账本和本地账本的同步状态之后,还包括:若同步状态为未同步U,则将本地区块高度H到当前区块高度Hx范围内的区块作为待同步区块;遍历所有的待同步区块,得到每一个待同步区块的交易数;将每一个待同步区块的交易数与本地账本中原来的历史交易总数信息进行累加,以计算出新的历史交易总数信息;将新的历史交易总数信息更新到本地账本,以替换原来的历史交易总数信息,并将同步状态更新为已同步S。进一步的,将新的历史交易总数信息更新到本地账本,以替换原来的历史交易总数信息具体为:采用二进制键值的存储方式将新的历史交易总数信息更新到本地账本,以替换原来的历史交易总数信息。进一步的,根据新交易的交易数计算出当前交易总数信息,并将当前交易总数信息更新到本地账本具体包括:判断区块链账本与本地账本在新交易过程中的同步状态;若同步状态为已同步S,则从本地账本中读取历史交易总数信息;将新交易的交易数累加到历史交易总数信息上,得到新的当前交易总数信息;将新的当前交易总数信息更新到本地账本,以替换原来的当前交易总数信息,并将同步状态更新为已同步且可读R。进一步的,在接收到交易总数查询请求时,基于同步状态,通过预设接口从本地账本中的历史交易总数信息或当前交易总数信息中读取对应的交易总数信息具体包括:判断接收到交易总数查询请求时的同步状态;若接收到查询请求时,同步状态为已同步且可读R,则通过预设接口从本地账本中读取当前交易总数信息;若接收到查询请求时,同步状态为已同步S,且没有新交易产生,则通过预设接口从本地账本中读取历史交易总数信息。为了解决上述技术问题,本申请实施例还提供一种区块链交易信息管理装置,采用了如下所述的技术方案:获取模块,用于获取当前区块高度Hx和本地区块高度H,其中,当前区块高度Hx为Peer节点启动时区块链账本中区块的高度,本地区块高度H为Peer节点启动时本地账本中区块的高度;判断模块,用于根据当前区块高度Hx和本地区块高度H,判断区块链账本与本地账本的同步状态;监测模块,用于若同步状态为已同步且可读R,或者,同步状态为已同步S,则对交易进行实时监测,当监测到有新交易产生时,获取新交易的交易数;更新模块,用于根据新交易的交易数计算出当前交易总数信息,并将当前交易总数信息更新到本地账本;查询模块,用于在接收到交易总数查询请求时,基于同步状态,通过预设接口从本地账本中的历史交易总数信息或当前交易总数信息中读取对应的交易总数信息,并将读取到的交易总数信息作为查询结果,其中,查询结果为历史交易总数信息或当前交易总数信息。为了解决上述技术问题,本申请实施例还提供一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,处理器执行计算机程序时实现上述区块链交易信息管理方法的步骤。为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述区块链交易信息管理方法的步骤。与现有技术相比,本申请实施例主要有以下有益效果:由以上技术方案可知,本申请公开了一种区块链交易信息管理方法、装置、计算机设备及存储介质,所述方法通过获取当前区块高度Hx和本地区块高度H;根据当前区块高度Hx和本地区块高度H,判断区块链账本与本地账本的同步状态;若同步状态为已同步且可读R,或者,同步状态为已同步S,则对交易进行实时监测,当监测到有新交易产生时,获取新交易的交易数;根据新交易的交易数计算出当前交易总数信息,并将当前交易总数信息更新到本地账本;在接收到交易总数查询请求时,基于同步状态,通过预设接口从本地账本中的历史交易总数信息或当前交易总数信息中读取对应的交易总数信息,并将读取到的交易总数信息作为查询结果。所述方法根据区块链账本与本地账本的同步状态对交易进行实时监测,实现了本地账本中的交易总数信息与区块链账本中的交易总数信息的同步,在进行交本文档来自技高网...

【技术保护点】
1.一种区块链交易信息管理方法,其特征在于,包括:/n获取当前区块高度Hx和本地区块高度H,其中,所述当前区块高度Hx为Peer节点启动时区块链账本中区块的高度,所述本地区块高度H为Peer节点启动时本地账本中区块的高度;/n根据所述当前区块高度Hx和所述本地区块高度H,判断所述区块链账本与所述本地账本的同步状态;/n若所述同步状态为已同步且可读R,或者,所述同步状态为已同步S,则对交易进行实时监测,当监测到有新交易产生时,获取所述新交易的交易数;/n根据所述新交易的交易数计算出当前交易总数信息,并将所述当前交易总数信息更新到本地账本;/n在接收到交易总数查询请求时,基于所述同步状态,通过预设接口从所述本地账本中的历史交易总数信息或当前交易总数信息中读取对应的交易总数信息,并将读取到的所述交易总数信息作为查询结果,其中,所述查询结果为历史交易总数信息或当前交易总数信息。/n

【技术特征摘要】
1.一种区块链交易信息管理方法,其特征在于,包括:
获取当前区块高度Hx和本地区块高度H,其中,所述当前区块高度Hx为Peer节点启动时区块链账本中区块的高度,所述本地区块高度H为Peer节点启动时本地账本中区块的高度;
根据所述当前区块高度Hx和所述本地区块高度H,判断所述区块链账本与所述本地账本的同步状态;
若所述同步状态为已同步且可读R,或者,所述同步状态为已同步S,则对交易进行实时监测,当监测到有新交易产生时,获取所述新交易的交易数;
根据所述新交易的交易数计算出当前交易总数信息,并将所述当前交易总数信息更新到本地账本;
在接收到交易总数查询请求时,基于所述同步状态,通过预设接口从所述本地账本中的历史交易总数信息或当前交易总数信息中读取对应的交易总数信息,并将读取到的所述交易总数信息作为查询结果,其中,所述查询结果为历史交易总数信息或当前交易总数信息。


2.如权利要求1所述的区块链交易信息管理方法,其特征在于,所述获取当前区块高度Hx和本地区块高度H具体包括:
在监测到Peer节点启动时,运行预设的交易总数状态机,获取所述时区块链账本中所述当前区块高度Hx;
从所述本地账本中获取所述本地区块高度H。


3.如权利要求1所述的区块链交易信息管理方法,其特征在于,所述根据所述当前区块高度Hx和所述本地区块高度H,判断所述区块链账本和所述本地账本的同步状态具体包括:
当所述当前区块高度Hx=0时,确定所述同步状态为同步且可读R;
当所述当前区块高度Hx>0时,判断所述本地区块高度H是否与所述当前区块高度Hx一致;
若所述本地区块高度H与所述当前区块高度Hx一致,则确定所述同步状态为已同步且可读R,反之,则确定所述同步状态为未同步U。


4.如权利要求3所述的区块链交易信息管理方法,其特征在于,所述根据所述当前区块高度Hx和所述本地区块高度H,判断所述区块链账本和所述本地账本的同步状态之后,还包括:
若所述同步状态为未同步U,则将所述本地区块高度H到所述当前区块高度Hx范围内的区块作为待同步区块;
遍历所有的所述待同步区块,得到每一个所述待同步区块的交易数;
将每一个待同步区块的交易数与所述本地账本中原来的历史交易总数信息进行累加,以计算出新的历史交易总数信息;
将所述新的历史交易总数信息更新到本地账本,以替换所述原来的历史交易总数信息,并将所述同步状态更新为已同步S。


5.如权利要求4所述的区块链交易信息管理方法,其特征在于,所述将所述新的历史交易总数信息更新到本地账本,以替换所述原来的历史交易总数信息具体为:
采用二进制键值的存储方式将所述新的历史交易总数信息更新...

【专利技术属性】
技术研发人员:姚杰褚镇飞
申请(专利权)人:深圳壹账通智能科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1