CN111144883B - 一种区块链网络的处理性能分析方法及装置 - Google Patents

一种区块链网络的处理性能分析方法及装置 Download PDF

Info

Publication number
CN111144883B
CN111144883B CN201911242997.0A CN201911242997A CN111144883B CN 111144883 B CN111144883 B CN 111144883B CN 201911242997 A CN201911242997 A CN 201911242997A CN 111144883 B CN111144883 B CN 111144883B
Authority
CN
China
Prior art keywords
transaction
blockchain
cross
chain
transactions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911242997.0A
Other languages
English (en)
Other versions
CN111144883A (zh
Inventor
莫楠
张开翔
范瑞彬
石翔
贺双洪
尹强文
王�章
李辉忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WeBank Co Ltd
Original Assignee
WeBank Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201911242997.0A priority Critical patent/CN111144883B/zh
Publication of CN111144883A publication Critical patent/CN111144883A/zh
Application granted granted Critical
Publication of CN111144883B publication Critical patent/CN111144883B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Debugging And Monitoring (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明公开了一种区块链网络的处理性能分析方法及装置,其中方法为:在区块链网络执行多个跨链事务;其中,所述多个跨链事务中各跨链事务是在所述区块链网络的多个区块链上通过依次执行多笔交易来完成的事务;每个跨链事务对应的多笔交易中均具有相同的事务标识;根据所述多个跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能。上述方法应用于金融科技(Fintech)时,能够提供一种分析金融机构的区块链网络的处理性能的方法。

Description

一种区块链网络的处理性能分析方法及装置
技术领域
本发明涉及金融科技(Fintech)领域和计算机软件领域,尤其涉及一种区块链网络的处理性能分析方法及装置。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出的更高的要求。由于区块链有不可篡改、一致等特性,区块链(blockchain)技术越来越多地应用在了金融领域。因此,区块链的性能对金融机构的服务质量来说至关重要。
现有技术中存在对区块链的处理性能分析方式,然而这种方式只是对单个区块链进行了分析。而目前越来越多的事务需要多个区块链构成的区块链网络协同完成,现有技术中的方式并没有对区块链网络的处理性能进行分析的方式,这是一个亟待解决的问题。
发明内容
本申请实施例提供一种区块链网络的处理性能分析方法及装置,解决了现有技术中没有对区块链网络的性能进行分析的方式的问题。
第一方面,本申请实施例提供一种区块链网络的处理性能分析方法,包括:在区块链网络执行多个跨链事务;其中,所述跨链事务是在所述区块链网络的多个区块链上通过依次执行多笔交易来完成的事务;每个跨链事务对应的多笔交易中均具有相同的事务标识;根据所述跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能。
上述方法中,首先在区块链网络执行多个跨链事务,因为跨链事务是在所述区块链网络的多个区块链上通过依次执行多笔交易来完成的事务,所以所述多个跨链事务中每笔交易的发起时刻和上链时刻都能记录下来,并据此确定所述区块链网络的处理性能,从而提供了一种对区块链网络的性能进行分析的方式。
一种可选实施方式中,所述区块链网络的处理性能为所述区块链网络处理跨链事务的平均处理时长;所述根据所述跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能,包括:针对所述多个跨链事务中每个跨链事务,将所述跨链事务的最后一笔交易的上链时刻与第一笔交易的发起时刻之间的间隔时长,作为所述跨链事务的处理时长;根据所述多个跨链事务的处理时长、所述多个跨链事务的权重值和所述多个跨链事务的事务数量,确定所述区块链网络的平均处理时长。
上述方法中,当所述区块链网络的处理性能为所述区块链网络处理跨链事务的平均处理时长时,可以根据每个跨链事务中每笔交易的发起时刻和上链时刻,确定所述跨链事务的处理时长,从而再根据所述多个跨链事务的处理时长、所述多个跨链事务的权重值和所述多个跨链事务的事务数量,提供了一种确定所述区块链网络的平均处理时长的方法。
一种可选实施方式中,所述区块链网络的处理性能为所述区块链网络中每个区块链的交易确认性能;所述根据所述多个跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能,包括:针对所述区块链网络的每个区块链,根据所述多个跨链事务在所述区块链上发起的每笔交易的发起时刻和上链时刻,确定该笔交易在所述区块链的交易确认时长;至少根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认性能中是否存在性能瓶颈。
上述方法中,当所述区块链网络的处理性能为所述区块链网络中每个区块链的交易确认性能时,可以根据所述多个跨链事务在每个区块链上发起的每笔交易的发起时刻和上链时刻,确定该笔交易在所述区块链的交易确认时长;而且可以至少根据在所述区块链上发起的每笔交易的交易确认时长,提供一种确定所述区块链的交易确认性能中是否存在性能瓶颈的方法。
一种可选实施方式中,所述至少根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认性能中是否存在性能瓶颈,包括:根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认时长的波动程度;若确定所述区块链的交易确认时长的波动程度为波动较高,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长不大于预设时长,则确定所述区块链的交易确认性能中的交易执行性能不存在性能瓶颈。
上述方式下,由于所述区块链的交易确认时长的波动程度表征了交易执行的稳定性,因此,若确定所述区块链的交易确认时长的波动程度为波动较高,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈,或者,若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链整体的平均交易确认时长控制在预设时长范围内,则确定所述区块链的交易确认性能中的交易执行性能不存在性能瓶颈,从而提供了一种确定所述区块链的交易确认性能中是否存在性能瓶颈的方法。
一种可选实施方式中,若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长大于所述预设时长,则确定所述区块链的交易确认性能存在瓶颈,并确定第一比例和第二比例;所述第一比例为所述区块链的交易执行总时长在所述区块链的交易确认总时长中的占比;所述第二比例为所述区块链的区块共识总时长在所述区块链的交易确认总时长中的占比;若所述第一比例大于所述第二比例,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,若所述第一比例不大于所述第二比例,则确定所述区块链的交易确认性能中的区块共识性能存在性能瓶颈。
上述方式下,当确定所述区块链的交易确认时长的波动程度为波动较低时,且所述区块链的平均交易确认时长大于所述预设时长,只知道区块链整体的交易确认性能存在瓶颈,还需要确定性能瓶颈是在区块共识性能上还是交易执行性能上,因此确定第一比例和第二比例,并在所述第一比例大于所述第二比例时,确定交易执行性能存在性能瓶颈;或者,在所述第一比例不大于所述第二比例时,确定区块共识性能存在性能瓶颈,从而提供一种在所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长大于所述预设时长下的交易执行性能瓶颈细粒度确定方法。
一种可选实施方式中,针对所述区块链网络的任一区块链,根据所述多个跨链事务的执行过程中,所述区块链的区块交易数量不小于所述区块链的区块交易数量上限的跨链事务个数,确定所述区块链的区块打包饱和程度;所述区块交易数量等于所述区块链的区块交易数量上限时,所述区块链的区块进行了打包。
上述方式下,由于区块交易数量等于区块交易数量上限时,所述区块链的区块进行了打包,因此可以根据所述区块链的区块交易数量等于所述区块链的区块交易数量上限的跨链事务个数,提供了一种确定所述区块链的区块打包饱和程度的方法。
第二方面,本申请提供一种区块链网络的处理性能分析装置,包括:执行模块,用于在区块链网络执行多个跨链事务;其中,所述多个跨链事务中各跨链事务是在所述区块链网络的多个区块链上通过依次执行多笔交易来完成的事务;每个跨链事务对应的多笔交易中均具有相同的事务标识;确定模块,用于根据所述多个跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能。
一种可选实施方式中,所述区块链网络的处理性能为所述区块链网络处理跨链事务的平均处理时长;所述确定模块具体用于:针对所述多个跨链事务中每个跨链事务,将所述跨链事务的最后一笔交易的上链时刻与第一笔交易的发起时刻之间的间隔时长,作为所述跨链事务的处理时长;根据所述多个跨链事务的处理时长、所述多个跨链事务的权重值和所述多个跨链事务的事务数量,确定所述区块链网络的平均处理时长。
一种可选实施方式中,所述区块链网络的处理性能为所述区块链网络中每个区块链的交易确认性能;所述确定模块具体用于:针对所述区块链网络的每个区块链,根据所述多个跨链事务在所述区块链上发起的每笔交易的发起时刻和上链时刻,确定该笔交易在所述区块链的交易确认时长;至少根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认性能中是否存在性能瓶颈。
一种可选实施方式中,所述确定模块具体用于:根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认时长的波动程度;若确定所述区块链的交易确认时长的波动程度为波动较高,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长不大于预设时长,则确定所述区块链的交易确认性能中的交易执行性能不存在性能瓶颈。
一种可选实施方式中,在所述区块链上发起的每笔交易的交易确认时长包括该笔交易的交易执行时长和该笔交易的区块共识时长;所述确定装置还用于:若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长大于所述预设时长,则确定所述区块链的交易确认性能存在瓶颈,并确定第一比例和第二比例;所述第一比例为所述区块链的交易执行总时长在所述区块链的交易确认总时长中的占比;所述第二比例为所述区块链的区块共识总时长在所述区块链的交易确认总时长中的占比;若所述第一比例大于所述第二比例,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,若所述第一比例不大于所述第二比例,则确定所述区块链的交易确认性能中的区块共识性能存在性能瓶颈。
一种可选实施方式中,所述确定装置还用于:针对所述区块链网络的任一区块链,根据所述多个跨链事务的执行过程中,所述区块链的区块交易数量等于所述区块链的区块交易数量上限的跨链事务个数,确定所述区块链的区块打包饱和程度;所述区块交易数量等于所述区块链的区块交易数量上限时,所述区块链的区块进行了打包。
上述第二方面及第二方面各个实施例的有益效果,可以参考上述第一方面及第一方面各个实施例的有益效果,这里不再赘述。
第三方面,本申请实施例提供一种计算机设备,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个实施例的方法。
第四方面,本申请实施例提供一种存储介质,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个实施例的方法。
附图说明
图1为区块链的结构示意图;
图2为本申请实施例提供的一种区块链网络的处理性能分析方法的步骤流程示意图;
图3为区块链网络的同构链直接交互模式的结构示意图;
图4为区块链网络的异构链直接交互模式的结构示意图;
图5为区块链网络的异构链间接交互模式的结构示意图;
图6为本申请实施例提供的一种区块链网络的处理性能分析装置的结构示意图。
具体实施方式
为了更好的理解上述技术方案,下面将结合说明书附图及具体的实施方式对上述技术方案进行详细的说明,应当理解本申请实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本申请实施例以及实施例中的技术特征可以相互结合。
下面首先解释本申请实施例中出现的名词。
区块链:如图1所示,区块链是由一系列区块组成的一条链,每个块上除了记录本块的数据还会记录上一块的哈希(Hash)值,通过这种方式组成一条链。区块链的核心理念有两个,一个是密码学技术,另一个是去中心化思想,基于这两个理念做到区块链上的历史信息无法被篡改。
节点:网络中的每一个参与者就是一个节点,节点参与网络组建和数据交换。在区块链网络中,一个节点是指一个具有唯一身份的参与者,该节点具有一份完整的账本拷贝,具有参与区块链网络共识和账本维护的能力。
智能合约:智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。智能合约具体形式为部署在区块链上,完成特定功能的代码。举例来说,Solidity是一种主流的智能合约编程语言,用Solidity语言编写的智能合约,叫Solidity合约。当智能合约被部署到区块链上时,会产生合约地址,用户可通过合约地址调用此智能合约。智能合约中定义的函数,称为合约接口,对智能合约的调用,就是通过合约地址调用合约中的某个合约接口。
交易:交易是用户对部署在区块链上智能合约接口的一次操作请求。交易由用户发起,从用户的客户端发往区块链节点,区块链节点收到交易后,根据交易指定的合约地址和接口去调用相应的智能合约。
共识机制:共识机制是指对等网络上各交易节点,使用共同的算法,对一批交易进行确认。所用到的算法包括工作量证明,权益证明,多重签名验证,选举验证等。
在金融机构(银行机构、保险机构或证券机构)在进行业务(如银行的贷款业务、存款业务等)运转过程中,常对金融机构的区块链的处理性能进行分析。目前的方式都用一个交易来针对单个区块链进行处理性能的分析。但遇到跨区块链的场景中,由于跨链事务的确认和处理全流程,需要多个区块链***共同参与,涉及多个区块链***上的多个相关交易,这种以单一交易的处理能力来衡量,难以反映跨链场景的真实性能。这种情况不符合银行等金融机构的需求,也不利于金融机构各项业务的高效运转。
为此,如图2所示,本申请提供一种区块链网络的处理性能分析方法。
步骤201:在区块链网络执行多个跨链事务。
所述跨链事务是在所述区块链网络的多个区块链上通过依次执行多笔交易来完成的事务;每个跨链事务对应的多笔交易中均具有相同的事务标识。
步骤202:根据所述跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能。
需要说明的是,步骤201~步骤202的方法适用于跨链场景。举例来说,跨链场景按照架构和交互方式划分,跨链分为多链同构直接交互、异构直接交互和异构间接交互三种场景:
如图3所示,同构链直接交互模式中,区块链A与区块链B为隶属于不同业务,有着相同的底层架构,和不同的网络架构、存储和共识机制的两个区块链,两个区块链间通过网络代理程序、软件开发工具包(Software Development Kit,SDK)或其他软件直接相连,跨链交互发生在两个区块链之间。其中,区块链的业务指区块链的用途,区块链的底层架构指区块链的具体产品,如区块链为比特币,区块链为以太坊。
如图4所示,异构链直接交互模式中,区块链A与区块链B为隶属于不同业务,有不同的底层架构、不同的网络架构、存储和共识机制的两个区块链,两个区块链无法直接通信,通过协议转接模块进行交易和区块数据的转换,建立连接,协议转接模块仅作为通道,负责数据格式的转化,没有独立的链和共识机制
如图5所示,异构链间接交互模式中,区块链A与区块链B为隶属于不同业务,有不同的底层架构、不同的网络架构、存储和共识机制的两个区块链,两个区块链无法直接通信,通过协议转接模块,连接到中继链,中继链保存区块链A和区块链B的跨链状态,协调跨链流程,有独立的链和共识机制
步骤201中,针对不同的跨链场景,可以通过统一的流程来执行跨链事务,从而对区块链网络进行处理性能测试,处理性能测试的核心是正确判断单次跨链事务的发起时刻与结束时刻,每个跨链事务均有唯一的事务标识(ID),所有跨链事务产生的交易,都保存了该事务ID,流程如下:
第一步,启动跨链事务,向参与跨链事务的任一条区块链发起跨链的启动交易。启动交易即跨链事务的第一笔交易。
第二步、确认启动交易成功上链,记录跨链事务的事务ID,和该笔交易的发起时刻和上链时刻。
第三步、跨链事务流程中,参与的区块链、协议转接模块或中继链会相继产生多笔与本次跨链事务相关的交易,使用事务ID对这些交易进行跟踪和记录,记录交易的发起时刻和上链时刻。
第四步、确认跨链事务中的最后一步交易上链成功,记录该交易的发起时刻和上链时刻。
完成一个跨链事务的流程后,可得到整个跨链事务所有交易的区块链、发送时刻和上链时刻,无论是哪种跨链场景,都可以记录下其跨链处理的所有交易信息。
如表1所示,以异构间接交互场景为例,跨链货品交易事务的执行流程如下:
Figure BDA0002306783100000091
Figure BDA0002306783100000101
表1
其中,表1中的时刻的单位可根据具体场景设置,如单位为毫秒(ms),下面结合表1示出的跨链货品交易流程,详细说明步骤202。
步骤202的一种可选实施方式中,当所述区块链网络的处理性能为所述区块链网络处理跨链事务的平均处理时长时,步骤202具体可以按照以下方式执行:
针对所述多个跨链事务中每个跨链事务,将所述跨链事务的最后一笔交易的上链时刻与第一笔交易的发起时刻之间的间隔时长,作为所述跨链事务的处理时长;根据所述多个跨链事务的处理时长、所述多个跨链事务的权重值和所述多个跨链事务的事务数量,确定所述区块链网络的平均处理时长。
如在表1示出的例子中,将序号为6的最后一笔交易的上链时刻0700与将序号为1的第一笔交易的发起时刻0100的差值0600,作为跨链货品交易事务的处理时长。每个跨链事务的处理时长都可以按照该可选实施方式计算。每个跨链事务的处理时长可以预先设置权重值,举例来说,执行3个跨链事务的事务数量,即跨链事务的事务数量为3。那么为区块链网络的平均处理时长可以这样确定:t=(w1*t1+w2*t2+w3*t3)/3。特殊地,w1=w2=w3=1。
步骤202的一种可选实施方式中,当所述区块链网络的处理性能为所述区块链网络中每个区块链的交易确认性能时,步骤202具体可以按照以下方式执行:
(1)针对所述所述区块链网络的每个区块链,根据所述多个跨链事务在所述区块链上发起的每笔交易的发起时刻和上链时刻,确定该笔交易在所述区块链的交易确认时长。
以表1示出的例子来说,跨链货品交易事务的序号为1的交易的交易时长为序号为1的交易的上链时刻0200与序号为1的交易的发起时刻0100的差值为0100,即序号为1的交易的交易确认时长为0100。
(2)至少根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认性能中是否存在性能瓶颈。
步骤(2)可以按照以下方式执行:
根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认时长的波动程度。
举例来说,通过区块链每笔交易的交易确认时长的方差来表征区块链的交易确认时长的波动程度。还可以通过区块链每笔交易的交易确认时长的标准差、归一化方差等来表征区块链的交易确认时长的波动程度,在此不做限定。
若确定所述区块链的交易确认时长的波动程度为波动较高,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长不大于预设时长,则确定所述区块链的交易确认性能中的交易执行性能不存在性能瓶颈。
需要说明的是,区块链的交易确认时长的波动程度为波动较高或波动较低的确定方法可根据具体情况设置。如根据区块链的交易确认时长的方差与预设方差阈值来确定区块链的交易确认时长的波动程度。当交易确认时长的方差大于预设方差阈值时,确定区块链的交易确认时长的波动程度为波动较高;当交易确认时长的方差不大于预设方差阈值时,确定区块链的交易确认时长的波动程度为波动较低。区块链的交易确认时长的波动程度为波动较大时,可以确认区块链上某个特定交易的逻辑是否过于复杂,很可能存在瓶颈,评估能否将原逻辑拆分成多个交易或者将部分逻辑分配到其它区块链。
进一步地,由于在所述区块链上发起的每笔交易的交易确认时长包括该笔交易的交易执行时长和该笔交易的区块共识时长;(2)中还可以执行以下步骤:
若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长大于所述预设时长,则确定所述区块链的交易确认性能存在瓶颈,并确定第一比例和第二比例。若所述第一比例大于所述第二比例,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,若所述第一比例不大于所述第二比例,则确定所述区块链的交易确认性能中的区块共识性能存在性能瓶颈。
需要说明的是,所述第一比例为所述区块链的交易执行总时长在所述区块链的交易确认总时长中的占比;所述第二比例为所述区块链的区块共识总时长在所述区块链的交易确认总时长中的占比。所述区块链的交易执行总时长为所述区块链的每笔交易的交易执行时长之和。所述区块链的交易确认总时长为所述区块链的每笔交易的交易确认时长之和。所述区块链的区块共识总时长为所述区块链的每笔交易的区块共识时长之和。
如果某个区块链的交易确认时长的波动程度为波动较小,且所述区块链的平均交易确认时长维持在较大值(如大于所述预设时长),需要通过区块链日志确认,第一比例和第二比例,如果第二比例较大,即区块共识时长占比较大,表明该区块链的共识过程存在异常,很可能存在共识节点过多、共识算法过于复杂或是共识节点异常等问题。如果第一比例较大,即交易执行时长占比较大,表明该区块链的交易执行过程存在异常,可以确认区块链上某个特定交易的逻辑是否过于复杂,很可能存在瓶颈,评估能否将原逻辑拆分成多个交易或者将部分逻辑分配到其它区块链。。
步骤201之后的一种可选实施方式中,针对所述区块链网络的任一区块链,根据所述多个跨链事务的执行过程中,所述区块链的区块交易数量不小于所述区块链的区块交易数量上限的跨链事务个数,确定所述区块链的区块打包饱和程度。所述区块交易数量等于所述区块链的区块交易数量上限时,所述区块链的区块进行了打包
举例来说,共执行了10个跨链事务。其中,所述区块链的区块交易数量不小于所述区块链的区块交易数量上限的跨链事务有8个,即区块链在执行10个跨链事务的过程中8次出现了区块打包。特殊地,若区块链在执行10个跨链事务的过程中,区块交易数量一直达到区块链的区块交易数量上限,则表明区块链在执行过程中承受了过大的压力,区块链无法及时处理收到的所有交易,导致区块的打包一直处于饱和状态;再如,区块链在执行10个跨链事务的过程中,一直低于该区块链的区块交易数量上限,表明该区块链的压力不足,没有收到足够量的压力,因此可以协调跨链事务中多个链的区块大小,均衡负载,才能提升跨链事务整体的性能。
如图6所示,本申请提供一种区块链网络的处理性能分析装置,包括:执行模块601,用于在区块链网络执行多个跨链事务;其中,所述多个跨链事务中各跨链事务是在所述区块链网络的多个区块链上通过依次执行多笔交易来完成的事务;每个跨链事务对应的多笔交易中均具有相同的事务标识;确定模块602,用于根据所述多个跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能。
一种可选实施方式中,所述区块链网络的处理性能为所述区块链网络处理跨链事务的平均处理时长;所述确定模块602具体用于:针对所述多个跨链事务中每个跨链事务,将所述跨链事务的最后一笔交易的上链时刻与第一笔交易的发起时刻之间的间隔时长,作为所述跨链事务的处理时长;根据所述多个跨链事务的处理时长、所述多个跨链事务的权重值和所述多个跨链事务的事务数量,确定所述区块链网络的平均处理时长。
一种可选实施方式中,所述区块链网络的处理性能为所述区块链网络中每个区块链的交易确认性能;所述确定模块602具体用于:针对所述所述区块链网络的每个区块链,根据所述多个跨链事务在所述区块链上发起的每笔交易的发起时刻和上链时刻,确定该笔交易在所述区块链的交易确认时长;至少根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认性能中是否存在性能瓶颈。
一种可选实施方式中,所述确定模块602具体用于:根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认时长的波动程度;若确定所述区块链的交易确认时长的波动程度为波动较高,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长不大于预设时长,则确定所述区块链的交易确认性能中的交易执行性能不存在性能瓶颈。
一种可选实施方式中,在所述区块链上发起的每笔交易的交易确认时长包括该笔交易的交易执行时长和该笔交易的区块共识时长;所述确定装置还用于:若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长大于所述预设时长,则确定所述区块链的交易确认性能存在瓶颈,并确定第一比例和第二比例;所述第一比例为所述区块链的交易执行总时长在所述区块链的交易确认总时长中的占比;所述第二比例为所述区块链的区块共识总时长在所述区块链的交易确认总时长中的占比;若所述第一比例大于所述第二比例,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,若所述第一比例不大于所述第二比例,则确定所述区块链的交易确认性能中的区块共识性能存在性能瓶颈。
一种可选实施方式中,所述确定装置还用于:针对所述区块链网络的任一区块链,根据所述多个跨链事务的执行过程中,所述区块链的区块交易数量等于所述区块链的区块交易数量上限的跨链事务个数,确定所述区块链的区块打包饱和程度;所述区块交易数量等于所述区块链的区块交易数量上限时,所述区块链的区块进行了打包。
本申请实施例提供一种计算机设备,包括程序或指令,当所述程序或指令被执行时,用以执行本申请实施例提供的一种区块链网络的处理性能分析方法及任一可选方法。
本申请实施例提供一种存储介质,包括程序或指令,当所述程序或指令被执行时,用以执行本申请实施例提供的一种区块链网络的处理性能分析方法及任一可选方法。
最后应说明的是:本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种区块链网络的处理性能分析方法,其特征在于,包括:
在区块链网络执行多个跨链事务;其中,所述多个跨链事务中各跨链事务是在所述区块链网络的多个区块链上通过依次执行多笔交易来完成的事务;每个跨链事务对应的多笔交易中均具有相同的事务标识;
在区块链网络执行多个跨链事务,包括:
针对任一跨链事务,启动所述跨链事务,向参与所述跨链事务的任一条区块链发起跨链的启动交易;
确认所述启动交易成功上链,记录所述跨链事务的事务ID、所述启动交易的发起时刻和上链时刻;所述事务ID用于对所述跨链事务中的交易进行跟踪,并记录交易的发起时刻和上链时刻;
确认所述跨链事务中的最后一笔交易上链成功,记录最后一笔交易的发起时刻和上链时刻;
根据所述多个跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能。
2.如权利要求1所述的方法,其特征在于,所述区块链网络的处理性能为所述区块链网络处理跨链事务的平均处理时长;所述根据所述多个跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能,包括:
针对所述多个跨链事务中每个跨链事务,将所述跨链事务的最后一笔交易的上链时刻与第一笔交易的发起时刻之间的间隔时长,作为所述跨链事务的处理时长;
根据所述多个跨链事务的处理时长、所述多个跨链事务的权重值和所述多个跨链事务的事务数量,确定所述区块链网络的平均处理时长。
3.如权利要求1所述的方法,其特征在于,所述区块链网络的处理性能为所述区块链网络中每个区块链的交易确认性能;所述根据所述多个跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能,包括:
针对所述区块链网络的每个区块链,根据所述多个跨链事务在所述区块链上发起的每笔交易的发起时刻和上链时刻,确定该笔交易在所述区块链的交易确认时长;
至少根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认性能中是否存在性能瓶颈。
4.如权利要求3所述的方法,其特征在于,所述至少根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认性能中是否存在性能瓶颈,包括:
根据在所述区块链上发起的每笔交易的交易确认时长,确定所述区块链的交易确认时长的波动程度;
若确定所述区块链的交易确认时长的波动程度为波动较高,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,
若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长不大于预设时长,则确定所述区块链的交易确认性能中的交易执行性能不存在性能瓶颈。
5.如权利要求4所述的方法,其特征在于,在所述区块链上发起的每笔交易的交易确认时长包括该笔交易的交易执行时长和该笔交易的区块共识时长;还包括:
若确定所述区块链的交易确认时长的波动程度为波动较低,且所述区块链的平均交易确认时长大于所述预设时长,则确定所述区块链的交易确认性能存在瓶颈,并确定第一比例和第二比例;所述第一比例为所述区块链的交易执行总时长在所述区块链的交易确认总时长中的占比;所述第二比例为所述区块链的区块共识总时长在所述区块链的交易确认总时长中的占比;
若所述第一比例大于所述第二比例,则确定所述区块链的交易确认性能中的交易执行性能存在性能瓶颈;或者,
若所述第一比例不大于所述第二比例,则确定所述区块链的交易确认性能中的区块共识性能存在性能瓶颈。
6.如权利要求1-5任一所述的方法,其特征在于,还包括:
针对所述区块链网络的任一区块链,根据所述多个跨链事务的执行过程中,所述区块链的区块交易数量等于所述区块链的区块交易数量上限的跨链事务个数,确定所述区块链的区块打包饱和程度;所述区块交易数量等于所述区块链的区块交易数量上限时,所述区块链的区块进行了打包。
7.一种区块链网络的性能分析装置,其特征在于,包括:
执行模块,用于在区块链网络执行多个跨链事务;其中,所述多个跨链事务中各跨链事务是在所述区块链网络的多个区块链上通过依次执行多笔交易来完成的事务;每个跨链事务对应的多笔交易中均具有相同的事务标识;
所述执行模块,具体用于针对任一跨链事务,启动所述跨链事务,向参与所述跨链事务的任一条区块链发起跨链的启动交易;确认所述启动交易成功上链,记录所述跨链事务的事务ID、所述启动交易的发起时刻和上链时刻;所述事务ID用于对所述跨链事务中的交易进行跟踪,并记录交易的发起时刻和上链时刻;确认所述跨链事务中的最后一笔交易上链成功,记录最后一笔交易的发起时刻和上链时刻;
确定模块,用于根据所述多个跨链事务中每笔交易的发起时刻和上链时刻,确定所述区块链网络的处理性能。
8.如权利要求7所述的装置,其特征在于,所述区块链网络的处理性能为所述区块链网络处理跨链事务的平均处理时长;所述确定模块具体用于:
针对所述多个跨链事务中每个跨链事务,将所述跨链事务的最后一笔交易的上链时刻与第一笔交易的发起时刻之间的间隔时长,作为所述跨链事务的处理时长;
根据所述多个跨链事务的处理时长、所述多个跨链事务的权重值和所述多个跨链事务的事务数量,确定所述区块链网络的平均处理时长。
9.一种计算机设备,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至6中任意一项所述的方法被执行。
10.一种存储介质,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至6中任意一项所述的方法被执行。
CN201911242997.0A 2019-12-06 2019-12-06 一种区块链网络的处理性能分析方法及装置 Active CN111144883B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911242997.0A CN111144883B (zh) 2019-12-06 2019-12-06 一种区块链网络的处理性能分析方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911242997.0A CN111144883B (zh) 2019-12-06 2019-12-06 一种区块链网络的处理性能分析方法及装置

Publications (2)

Publication Number Publication Date
CN111144883A CN111144883A (zh) 2020-05-12
CN111144883B true CN111144883B (zh) 2023-05-16

Family

ID=70517743

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911242997.0A Active CN111144883B (zh) 2019-12-06 2019-12-06 一种区块链网络的处理性能分析方法及装置

Country Status (1)

Country Link
CN (1) CN111144883B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG10202006451QA (en) 2020-07-03 2021-02-25 Alipay Labs Singapore Pte Ltd Managing transactions in multiple blockchain networks
SG10202006447VA (en) 2020-07-03 2021-04-29 Alipay Labs Singapore Pte Ltd Managing transactions in multiple blockchain networks
SG10202006466YA (en) 2020-07-03 2021-05-28 Alipay Labs Singapore Pte Ltd Managing transactions in multiple blockchain networks
CN112150284B (zh) * 2020-09-22 2024-04-12 浙江数秦科技有限公司 一种区块链异构链跨链交易方法
CN111970129B (zh) * 2020-10-21 2021-01-01 腾讯科技(深圳)有限公司 一种基于区块链的数据处理方法、设备以及可读存储介质
CN112350852B (zh) * 2020-10-21 2022-04-05 重庆邮电大学 一种基于车联网架构的区块链网络的性能计算方法
CN112435123A (zh) * 2020-11-25 2021-03-02 国网能源研究院有限公司 一种基于同构多链***的交易方法、***及存储介质
CN112882802A (zh) * 2021-02-01 2021-06-01 杭州云象网络技术有限公司 一种用于跨链的多链消息表事务处理方法及跨链***
CN115309581B (zh) * 2022-10-11 2023-01-24 人民法院信息技术服务中心 一种异构区块链跨链事务运行状态的分析方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018076760A1 (zh) * 2016-10-27 2018-05-03 上海亿账通区块链科技有限公司 基于区块链的交易事务处理方法、***、电子装置及存储介质
CN109753418A (zh) * 2018-12-28 2019-05-14 金蝶软件(中国)有限公司 性能测试方法、装置、计算机设备和存储介质
CN110033271A (zh) * 2019-03-22 2019-07-19 湖南天河国云科技有限公司 一种跨链交易方法、***及计算机可读存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018076760A1 (zh) * 2016-10-27 2018-05-03 上海亿账通区块链科技有限公司 基于区块链的交易事务处理方法、***、电子装置及存储介质
CN109753418A (zh) * 2018-12-28 2019-05-14 金蝶软件(中国)有限公司 性能测试方法、装置、计算机设备和存储介质
CN110033271A (zh) * 2019-03-22 2019-07-19 湖南天河国云科技有限公司 一种跨链交易方法、***及计算机可读存储介质

Also Published As

Publication number Publication date
CN111144883A (zh) 2020-05-12

Similar Documents

Publication Publication Date Title
CN111144883B (zh) 一种区块链网络的处理性能分析方法及装置
CN107395353B (zh) 一种区块链共识方法及装置
WO2020258848A1 (zh) 一种跨链发送资源的方法和装置
CN110442652B (zh) 一种基于区块链的跨链数据处理方法及装置
CN108062672B (zh) 一种基于区块链智能合约的流程调度方法
CN108170590B (zh) 一种区块链***的测试***和方法
CN111539726B (zh) 区块链共识***及方法
CN110517141B (zh) 一种基于区块链***的共识方法及装置
CN111612614A (zh) 一种基于公链的子链业务***
WO2020258847A1 (zh) 基于处理模块跨链发送可认证消息的方法和装置
CN109271245A (zh) 一种区块处理任务的控制方法和装置
CN110704438B (zh) 一种区块链中布隆过滤器的生成方法及装置
WO2021082340A1 (zh) 数据处理方法、装置、***和存储介质
CN111614468A (zh) 一种区块链共识方法及***
CN107153646B (zh) 一种数据处理方法和设备
CN113347164A (zh) 基于区块链的分布式共识***及方法、设备、存储介质
US20230275771A1 (en) Pre-execution of block chain transaction in parallel during block consensus
WO2021027612A1 (zh) 一种区块链中的交易执行方法及装置
CN110599175A (zh) 一种区块处理方法及相关设备
CN111640018B (zh) 一种区块链交易存在性验证方法及装置
Garcia Bringas et al. BlockChain platforms in financial services: current perspective
WO2020042929A1 (zh) 一种区块链***
CN113486118A (zh) 共识节点选取方法及装置
US20230409450A1 (en) Consensus processing method and apparatus for blockchain network
CN111667255B (zh) 基于联盟链的数字资产流转***及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant