CN112491983A - 基于区块链的智能合约调度方法、装置、设备及存储介质 - Google Patents
基于区块链的智能合约调度方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112491983A CN112491983A CN202011270163.3A CN202011270163A CN112491983A CN 112491983 A CN112491983 A CN 112491983A CN 202011270163 A CN202011270163 A CN 202011270163A CN 112491983 A CN112491983 A CN 112491983A
- Authority
- CN
- China
- Prior art keywords
- transaction
- packaged
- time
- transactions
- priority
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Marketing (AREA)
- Signal Processing (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种基于区块链的智能合约调度方法、装置、设备及存储介质。该方法包括:确定进入交易池中的待打包交易的优先级以及到达交易池的时间;根据优先级以及到达交易池的时间对交易池中的待打包交易进行排序;按照排序的结果将满足打包条件的待打包交易进行打包上链。本发明实施例所提供的技术方案,使得优先级较高的交易能够更快的被打包,即优先级较高的智能合约能够更快的被执行,从而实现了对智能合约的交易过程进行调度,提高了重要交易的打包效率,也不严重影响一般交易的打包效率,更加符合在实际使用区块链过程中用户的需求。
Description
技术领域
本发明实施例涉及区块链技术领域,尤其涉及一种基于区块链的智能合约调度方法、装置、设备及存储介质。
背景技术
智能合约是一种以信息化的方式传播、验证或执行合同的计算机协议,可以允许在没有第三方的情况下进行可信交易。近年来,随着区块链技术的飞速发展,可以允许智能合约在可信的环境下运行,使得智能合约的应用越来越广泛。
现有的区块链服务网络(Block-chain-based Service Network,BSN)以及传统的云服务商针对BaaS(Blockchain as a Service)提供的服务等级协议还不够成熟,只包括了服务的可用性、区块链的每秒交易数量(Transactions Per Second,TPS)、网络带宽和数据存储大小,没有针对区块链的特性进行专门的设计,无法实现对区块链中的不同智能合约进行细化管理。而且在通过交易调用智能合约的过程中,在现有的BaaS中,每个交易都需要在交易池中按照到达时间顺序排序,交易之间无差别对待,没有充分考虑到服务提供商与客户对交易的需求。
发明内容
本发明实施例提供一种基于区块链的智能合约调度方法、装置、设备及存储介质,以实现对智能合约的交易过程进行调度,提高重要交易的打包效率,更符合在实际使用区块链过程中用户的需求。
第一方面,本发明实施例提供了一种基于区块链的智能合约调度方法,该方法包括:
确定进入交易池中的待打包交易的优先级以及到达所述交易池的时间;
根据所述优先级以及到达所述交易池的时间对所述交易池中的所述待打包交易进行排序;
按照排序的结果将满足打包条件的所述待打包交易进行打包上链。
第二方面,本发明实施例还提供了一种基于区块链的智能合约调度装置,该装置包括:
优先级确定模块,用于确定进入交易池中的待打包交易的优先级以及到达所述交易池的时间;
交易排序模块,用于根据所述优先级以及到达所述交易池的时间对所述交易池中的所述待打包交易进行排序;
交易打包模块,用于按照排序的结果将满足打包条件的所述待打包交易进行打包上链。
第三方面,本发明实施例还提供了一种计算机设备,该计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的基于区块链的智能合约调度方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所提供的基于区块链的智能合约调度方法。
本发明实施例提供了一种基于区块链的智能合约调度方法,通过确定进入交易池中的待打包交易的优先级以及到达交易池的时间,然后根据各个待打包交易的优先级大小对交易池中的待打包交易进行排序,再按照排序的结果进行打包上链,使得优先级较高的交易能够更快的被打包,即优先级较高的智能合约能够更快的被执行,从而实现了对智能合约的交易过程进行调度,提高了重要交易的打包效率,也不严重影响一般交易的打包效率,更加符合在实际使用区块链过程中用户的需求。
附图说明
图1为本发明实施例一提供的基于区块链的智能合约调度方法的流程图;
图2为本发明实施例二提供的基于区块链的智能合约调度方法的流程图;
图3为本发明实施例三提供的基于区块链的智能合约调度装置的结构示意图;
图4为本发明实施例四提供的计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1为本发明实施例一提供的基于区块链的智能合约调度方法的流程图。本实施例可适用于在区块链中将进入交易池的交易打包上链的情况,该方法可以由本发明实施例提供的基于区块链的智能合约调度装置来执行,该装置可以由硬件和/或软件的方式来实现,一般可集成于计算机设备中。如图1所示,具体包括如下步骤:
S11、确定进入交易池中的待打包交易的优先级以及到达交易池的时间。
其中,交易池可以是一份未确认交易的临时列表,用于追踪记录已经被网络所知晓,但还尚未被区块链所包含而即将可以被打包上链的待打包交易。示例性的,在保存用户钱包的节点会利用交易池来记录网络已经接收但还尚未被确认的、属于该用户钱包的预支付信息。可以在待打包交易进入交易池时,确定该待打包交易到达交易池的时间,同时为该待打包交易分配一个优先级,优先级可以是一个数值,用于指示交易池中各个待打包交易之间的重要程度,并可以直观的进行比较,其中优先级较高的待打包交易可以得到优先处理,即可以优先的被打包上链。具体的,待打包交易的优先级可以根据用户指定的优先级数值或者根据待打包交易自身携带的信息来确定。
可选的,确定进入交易池中的待打包交易的优先级,包括:根据待打包交易的交易额、用户标识、交易调用智能合约标识以及交易费用中的至少一种确定优先级。具体的,可以根据交易额确定优先级,待打包交易的交易额越高,则说明该待打包交易越重要,可以分配更高的优先级;也可以根据用户标识确定优先级,即根据用户的重要程度确定优先级,可以将某些用户作为重点用户,并为其分配更高的优先级;还可以根据交易费用确定优先级,即根据用户针对一项交易所愿意支付的交易费用确定优先级,待打包交易的交易费用越高,区块打包者所能获得利润也就越高,也就可以分配更高的优先级。除此之外,还可以根据待打包交易自身携带的其他信息来确定优先级,即待打包交易携带的信息不限于上述四种。在确定待打包交易的优先级之前,可以预先存储优先级分别与交易额、用户标识、交易调用智能合约标识以及交易费用等信息的对应关系,则在待打包交易进入交易池时,可以直接根据交易额、用户标识或交易费用等信息中的一种查找对应关系以确定其优先级。同时,还可以根据交易额、用户标识、交易调用智能合约标识以及交易费用等信息中的至少两种来确定优先级,则在预先存储上述对应关系之外,还可以存储各个信息的权重,以计算得到多种信息对应的优先级。
S12、根据优先级以及到达交易池的时间对交易池中的待打包交易进行排序。
具体的,可以实时的将交易池中的待打包交易按照各自的优先级大小进行排序,具体可以在每个待打包交易进入交易池中时,根据其优先级的大小插入原有排序中的对应位置,从而保证了每一时刻交易池中的待打包交易均是按照优先级的顺序进行排列。同时还可以将拥有同一优先级的待打包交易按照到达交易池的时间进行排序,具体可以通过将进入交易池中的待打包交易插入相同优先级序列的末尾来实现,即优先级相同的待打包交易中,先进入交易池中的待打包交易可以优先处理,以避免先进入交易池中的待打包交易等待打包的时间过长,从而不严重影响一般交易的打包效率。
可选的,根据优先级以及到达交易池的时间对交易池中的待打包交易进行排序,包括:根据优先级确定对应的待打包交易的预计被打包时间;根据各个待打包交易的预计被打包时间的先后以及到达交易池的时间先后对交易池中的待打包交易进行排序。具体的,可以根据待打包交易的优先级得到对应的预计被打包时间,并按照预计被打包时间的先后对交易池中的待打包交易进行排序,从而提供了一个直观且确定的打包时间,为准确控制待打包交易的打包时间提供了基础,以进一步保证待打包交易所需的打包效率。其中,优先级高的待打包交易的预计被打包时间应该早于优先级低的待打包交易,具体的排序过程可以参考上述根据优先级进行排序的过程,在此将不再累述。
可选的,根据优先级确定对应的待打包交易的预计被打包时间,包括:根据优先级确定对应的待打包交易的等待时间;将到达交易池的时间与等待时间之和确定为对应的预计被打包时间。具体的,可以预先存储优先级与等待时间的对应关系,以表明具有某个优先级的待打包交易进入交易池后经过等待时间即应该被打包,并且优先级高的待打包交易的等待时间应该比优先级低的待打包交易的等待时间短。在某个待打包交易进入交易池并确定了优先级时,即可通过该对应关系查找对应的等待时间,在确定了等待时间之后,即可将到达交易池的时间与该等待时间之和确定为该待打包交易的预计被打包时间。
S13、按照排序的结果将满足打包条件的待打包交易进行打包上链。
其中,打包条件可以是交易池中现存的待打包交易的数量达到了预设的交易数量,或者距离上次打包达到了预设的时间间隔等等。具体的,可以在交易池中现存的待打包交易的数量达到了预设的交易数量之后,按照排序的结果将交易池中预设的交易数量对应的待打包交易确定为满足打包条件的待打包交易,还可以在距离上次打包达到了预设的时间间隔之后,按照排序的结果将交易池中的全部或部分待打包交易确定为满足打包条件的待打包交易。同时,还可以通过打包条件来触发打包事件,即在满足了打包条件之后,将所确定的需要打包的待打包交易打包成区块并记录在区块链中。
本发明实施例所提供的技术方案,通过确定进入交易池中的待打包交易的优先级以及到达交易池的时间,然后根据各个待打包交易的优先级大小对交易池中的待打包交易进行排序,再按照排序的结果进行打包上链,使得优先级较高的交易能够更快的被打包,即优先级较高的智能合约能够更快的被执行,从而实现了对智能合约的交易过程进行调度,提高了重要交易的打包效率,也不严重影响一般交易的打包效率,更加符合在实际使用区块链过程中用户的需求。
实施例二
图2为本发明实施例二提供的基于区块链的智能合约调度方法的流程图。本实施例的技术方案在上述技术方案的基础上进一步细化,可选的,可以根据上述确定的各个待打包交易的预计被打包时间来确定每次打包的交易数,以进一步保证待打包交易的打包效率。具体的,在本实施例中,按照排序的结果将满足打包条件的待打包交易进行打包上链,包括:根据预计被打包时间确定将要打包的待打包交易的交易数;当交易池中待打包交易的数量大于等于交易数时,或者当前时间与上次打包时间的时间差大于预设时间间隔时,按照排序的结果将交易数对应的待打包交易进行打包上链。相应的,如图2所示,具体可以包括如下步骤:
S21、确定进入交易池中的待打包交易的优先级以及到达交易池的时间。
S22、根据优先级确定对应的待打包交易的预计被打包所需在交易池等待时间的长短。
S23、根据各个待打包交易的预计被打包所需在交易池等待时间的长短以及到达交易池的时间先后预计各个待打包交易预计被打包的时间点,并根据此时间点对交易池中的待打包交易进行排序。
S24、根据预计被打包时间确定将要打包的待打包交易的交易数。
具体的,在确定了待打包交易的预计被打包时间之后,为了控制待打包交易能够在对应的预计被打包时间内被打包,可以根据待打包交易的预计被打包时间确定当前服务器可以打包的交易数,并在该交易数满足一定条件时进行打包,从而控制该次打包过程所需的时间。
可选的,根据预计被打包时间确定将要打包的待打包交易的交易数,包括:确定交易池中当前第一个待打包交易的预计被打包时间与当前时间的时间差;将时间差的范围内可容许打包的交易的数量确定为交易数。具体的,由于交易池中当前第一个待打包交易的预计被打包时间最早,所以可以根据该第一个待打包交易的预计被打包时间确定交易数。其中,当前时间为系统当前时间,随着当前时间的变化,交易池中当前第一个待打包交易的预计被打包时间与当前时间的时间差逐渐减小,而交易池中的待打包交易逐渐增多,在此过程中,可以不断的确定该时间差的范围内可容许打包的交易的数量,以实时的与交易池中待打包交易的数量进行比较,从而确定触发打包事件的时间以及实际将要打包的交易数。
可选的,在将时间差的范围内可容许打包的交易的数量确定为交易数之前,还包括:根据历史打包过程中打包每个交易所需的平均时间估计时间差的范围内可容许打包的交易的数量。具体的,当前服务器在该时间差的范围内所能够完成打包的交易的数量可以由服务器的当前性能与可调配资源所决定,即不仅与服务器的硬件有关也与服务器的当前运行状态有关,因此,在不同时刻服务器在该时间差的范围内所能够完成打包的交易数可能也会有所不同,根据历史打包过程中打包每个交易所需的平均时间估计可容许打包的交易数量可以提高结果的准确性。具体可以通过设置一个临时变量来记录每次打包过程或者某些打包过程从开始到结束打包每个交易所需的平均时间,来反映当前服务器的性能,并可以根据该平均时间计算下一次打包时对应时间差的范围内可容许打包的交易的数量。
S25、当交易池中待打包交易的数量大于等于交易数时,或者当前时间与上次打包时间的时间差大于预设时间间隔时,按照排序的结果将交易数对应的待打包交易进行打包上链。
具体的,如上,随着当前时间的变化,交易池中当前第一个待打包交易的预计被打包时间与当前时间的时间差以及交易池中的待打包交易的数量也会发生变化,在该时间差的范围内确定的交易数也就会发生变化,当交易池中待打包交易的数量大于等于该交易数时,即有足够的待打包交易可以用来打包时,即可按照排序的结果将此时该交易数对应的待打包交易进行打包上链,同时还可以在距离上次打包超过了预设时间间隔时,也进行打包的过程,以避免在交易数量较少时等待过久的情况,从而在保证了待打包交易的打包效率的基础上,还可以打包尽可能多的待打包交易,进一步的提高了整体的打包效率。
本发明实施例所提供的技术方案,通过根据待打包交易的预计被打包时间来确定将要打包的交易数,并当交易池中待打包交易的数量大于等于该交易数时,按照排序结果将该交易数对应的待打包交易进行打包上链,动态的调整了每个区块的大小,减少了交易平均的打包时间,即减少了智能合约的平均响应时间,进一步的提高了重要交易的打包效率。
实施例三
图3为本发明实施例三提供的基于区块链的智能合约调度装置的结构示意图,该装置可以由硬件和/或软件的方式来实现,一般可集成于计算机设备中。如图3所示,该装置包括:
优先级确定模块31,用于确定进入交易池中的待打包交易的优先级以及到达交易池的时间;
交易排序模块32,用于根据优先级以及到达交易池的时间对交易池中的待打包交易进行排序;
交易打包模块33,用于按照排序的结果将满足打包条件的待打包交易进行打包上链。
本发明实施例所提供的技术方案,通过确定进入交易池中的待打包交易的优先级以及到达交易池的时间,然后根据各个待打包交易的优先级大小对交易池中的待打包交易进行排序,再按照排序的结果进行打包上链,使得优先级较高的交易能够更快的被打包,即优先级较高的智能合约能够更快的被执行,从而实现了对智能合约的交易过程进行调度,提高了重要交易的打包效率,也不严重影响一般交易的打包效率,更加符合在实际使用区块链过程中用户的需求。
在上述技术方案的基础上,可选的,交易排序模块32,包括:
预计被打包时间确定子模块,用于根据优先级确定对应的待打包交易的预计被打包时间;
交易排序子模块,用于根据各个待打包交易的预计被打包时间的先后以及到达交易池的时间先后对交易池中的待打包交易进行排序。
在上述技术方案的基础上,可选的,预计被打包时间确定子模块,包括:
等待时间确定单元,用于根据优先级确定对应的待打包交易的等待时间;
预计被打包时间确定单元,用于将到达交易池的时间与等待时间之和确定为对应的预计被打包时间。
在上述技术方案的基础上,可选的,交易打包模块33,包括:
交易数确定子模块,用于根据预计被打包时间确定将要打包的待打包交易的交易数;
交易打包子模块,用于当交易池中待打包交易的数量大于等于交易数时,或者当前时间与上次打包时间的时间差大于预设时间间隔时,按照排序的结果将交易数对应的待打包交易进行打包上链。
在上述技术方案的基础上,可选的,交易数确定子模块,包括:
时间差确定单元,用于确定交易池中当前第一个待打包交易的预计被打包时间与当前时间的时间差;
交易数确定单元,用于将时间差的范围内可容许打包的交易的数量确定为交易数。
在上述技术方案的基础上,可选的,交易数确定子模块,还包括:
容许打包数量确定单元,用于在将时间差的范围内可容许打包的交易的数量确定为交易数之前,根据历史打包过程中打包每个交易所需的平均时间估计时间差的范围内可容许打包的交易的数量。
在上述技术方案的基础上,可选的,优先级确定模块31,包括:
优先级确定子模块,用于根据待打包交易的交易额、用户标识、交易调用智能合约标识以及交易费用中的至少一种确定优先级。
本发明实施例所提供的基于区块链的智能合约调度装置可执行本发明任意实施例所提供的基于区块链的智能合约调度方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,在上述基于区块链的智能合约调度装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例四
图4为本发明实施例四提供的计算机设备的结构示意图,示出了适于用来实现本发明实施方式的示例性计算机设备的框图。图4显示的计算机设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图4所示,该计算机设备包括处理器41、存储器42、输入装置43及输出装置44;计算机设备中处理器41的数量可以是一个或多个,图4中以一个处理器41为例,计算机设备中的处理器41、存储器42、输入装置43及输出装置44可以通过总线或其他方式连接,图4中以通过总线连接为例。
存储器42作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的基于区块链的智能合约调度方法对应的程序指令/模块(例如,基于区块链的智能合约调度装置中的优先级确定模块31、交易排序模块32及交易打包模块33)。处理器41通过运行存储在存储器42中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的基于区块链的智能合约调度方法。
存储器42可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器42可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器42可进一步包括相对于处理器41远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置43可用于获取进入交易池中的待打包交易,以及产生与计算机设备的用户设置和功能控制有关的键信号输入等。输出装置44可用于将打包上链的信息传递至其他设备等。
实施例五
本发明实施例五还提供一种包含计算机可执行指令的存储介质,该计算机可执行指令在由计算机处理器执行时用于执行一种基于区块链的智能合约调度方法,该方法包括:
确定进入交易池中的待打包交易的优先级以及到达交易池的时间;
根据优先级以及到达交易池的时间对交易池中的待打包交易进行排序;
按照排序的结果将满足打包条件的待打包交易进行打包上链。
存储介质可以是任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到计算机系统。第二计算机系统可以提供程序指令给计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的基于区块链的智能合约调度方法中的相关操作。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种基于区块链的智能合约调度方法,其特征在于,包括:
确定进入交易池中的待打包交易的优先级以及到达所述交易池的时间;
根据所述优先级以及到达所述交易池的时间对所述交易池中的所述待打包交易进行排序;
按照排序的结果将满足打包条件的所述待打包交易进行打包上链。
2.根据权利要求1所述的基于区块链的智能合约调度方法,其特征在于,所述根据所述优先级以及到达所述交易池的时间对所述交易池中的所述待打包交易进行排序,包括:
根据所述优先级确定对应的所述待打包交易的预计被打包时间;
根据各个所述待打包交易的所述预计被打包时间的先后以及到达所述交易池的时间先后对所述交易池中的所述待打包交易进行排序。
3.根据权利要求2所述的基于区块链的智能合约调度方法,其特征在于,所述根据所述优先级确定对应的所述待打包交易的预计被打包时间,包括:
根据所述优先级确定对应的所述待打包交易的等待时间;
将到达所述交易池的时间与所述等待时间之和确定为对应的所述预计被打包时间。
4.根据权利要求2所述的基于区块链的智能合约调度方法,其特征在于,所述按照排序的结果将满足打包条件的所述待打包交易进行打包上链,包括:
根据所述预计被打包时间确定将要打包的所述待打包交易的交易数;
当所述交易池中所述待打包交易的数量大于等于所述交易数时,或者当前时间与上次打包时间的时间差大于预设时间间隔时,按照所述排序的结果将所述交易数对应的所述待打包交易进行打包上链。
5.根据权利要求4所述的基于区块链的智能合约调度方法,其特征在于,所述根据所述预计被打包时间确定将要打包的所述待打包交易的交易数,包括:
确定所述交易池中当前第一个所述待打包交易的所述预计被打包时间与当前时间的时间差;
将所述时间差的范围内可容许打包的交易的数量确定为所述交易数。
6.根据权利要求5所述的基于区块链的智能合约调度方法,其特征在于,在所述将所述时间差的范围内可容许打包的交易的数量确定为所述交易数之前,还包括:
根据历史打包过程中打包每个交易所需的平均时间估计所述时间差的范围内可容许打包的交易的数量。
7.根据权利要求1所述的基于区块链的智能合约调度方法,其特征在于,所述确定进入交易池中的待打包交易的优先级,包括:
根据所述待打包交易的交易额、用户标识、交易调用智能合约标识以及交易费用中的至少一种确定所述优先级。
8.一种基于区块链的智能合约调度装置,其特征在于,包括:
优先级确定模块,用于确定进入交易池中的待打包交易的优先级以及到达所述交易池的时间;
交易排序模块,用于根据所述优先级以及到达所述交易池的时间对所述交易池中的所述待打包交易进行排序;
交易打包模块,用于按照排序的结果将满足打包条件的所述待打包交易进行打包上链。
9.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的基于区块链的智能合约调度方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的基于区块链的智能合约调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011270163.3A CN112491983A (zh) | 2020-11-13 | 2020-11-13 | 基于区块链的智能合约调度方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011270163.3A CN112491983A (zh) | 2020-11-13 | 2020-11-13 | 基于区块链的智能合约调度方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112491983A true CN112491983A (zh) | 2021-03-12 |
Family
ID=74930667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011270163.3A Pending CN112491983A (zh) | 2020-11-13 | 2020-11-13 | 基于区块链的智能合约调度方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112491983A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113222762A (zh) * | 2021-05-25 | 2021-08-06 | 杭州复杂美科技有限公司 | 交易打包方法、计算机设备和存储介质 |
CN113504978A (zh) * | 2021-07-14 | 2021-10-15 | 上海点融信息科技有限责任公司 | 用于确定区块链的出块时间的方法、装置及可读存储介质 |
CN113505343A (zh) * | 2021-07-14 | 2021-10-15 | 上海点融信息科技有限责任公司 | 用于确定区块链的出块时间的方法、装置及可读存储介质 |
CN113626531A (zh) * | 2021-09-03 | 2021-11-09 | 杭州复杂美科技有限公司 | 交易打包方法、计算机设备和存储介质 |
CN113949742A (zh) * | 2021-09-18 | 2022-01-18 | 深圳时空云科技有限公司 | 提高区块链的吞吐量的方法、装置 |
CN115271746A (zh) * | 2022-09-27 | 2022-11-01 | 江苏荣泽信息科技股份有限公司 | 一种带优先级的区块链交易排序算法 |
CN117994038A (zh) * | 2024-04-03 | 2024-05-07 | 湖南天河国云科技有限公司 | 基于区块链的交易处理方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160248692A1 (en) * | 2015-02-20 | 2016-08-25 | Exara, Inc. | Network Data Prioritizer |
CN109544332A (zh) * | 2018-10-17 | 2019-03-29 | 贵阳信息技术研究院(中科院软件所贵阳分部) | 一种基于用户等级的区块链交易出块的方法 |
WO2019114128A1 (zh) * | 2017-12-13 | 2019-06-20 | 深圳壹账通智能科技有限公司 | 区块链事务区块处理方法、电子装置及可读存储介质 |
CN110838065A (zh) * | 2019-10-24 | 2020-02-25 | 腾讯云计算(北京)有限责任公司 | 一种交易数据处理方法及装置 |
CN111177258A (zh) * | 2019-12-13 | 2020-05-19 | 浙商银行股份有限公司 | 一种基于区块链平台的自适应配置交易打包方法 |
WO2020133069A1 (zh) * | 2018-12-27 | 2020-07-02 | 合肥达朴汇联科技有限公司 | 区块链的数据处理方法和装置 |
CN111861485A (zh) * | 2020-05-30 | 2020-10-30 | 陈议尊 | 一种基于区块链的数字货币管控方法及设备 |
-
2020
- 2020-11-13 CN CN202011270163.3A patent/CN112491983A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160248692A1 (en) * | 2015-02-20 | 2016-08-25 | Exara, Inc. | Network Data Prioritizer |
WO2019114128A1 (zh) * | 2017-12-13 | 2019-06-20 | 深圳壹账通智能科技有限公司 | 区块链事务区块处理方法、电子装置及可读存储介质 |
CN109544332A (zh) * | 2018-10-17 | 2019-03-29 | 贵阳信息技术研究院(中科院软件所贵阳分部) | 一种基于用户等级的区块链交易出块的方法 |
WO2020133069A1 (zh) * | 2018-12-27 | 2020-07-02 | 合肥达朴汇联科技有限公司 | 区块链的数据处理方法和装置 |
CN110838065A (zh) * | 2019-10-24 | 2020-02-25 | 腾讯云计算(北京)有限责任公司 | 一种交易数据处理方法及装置 |
CN111177258A (zh) * | 2019-12-13 | 2020-05-19 | 浙商银行股份有限公司 | 一种基于区块链平台的自适应配置交易打包方法 |
CN111861485A (zh) * | 2020-05-30 | 2020-10-30 | 陈议尊 | 一种基于区块链的数字货币管控方法及设备 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113222762A (zh) * | 2021-05-25 | 2021-08-06 | 杭州复杂美科技有限公司 | 交易打包方法、计算机设备和存储介质 |
CN113504978A (zh) * | 2021-07-14 | 2021-10-15 | 上海点融信息科技有限责任公司 | 用于确定区块链的出块时间的方法、装置及可读存储介质 |
CN113505343A (zh) * | 2021-07-14 | 2021-10-15 | 上海点融信息科技有限责任公司 | 用于确定区块链的出块时间的方法、装置及可读存储介质 |
CN113626531A (zh) * | 2021-09-03 | 2021-11-09 | 杭州复杂美科技有限公司 | 交易打包方法、计算机设备和存储介质 |
CN113949742A (zh) * | 2021-09-18 | 2022-01-18 | 深圳时空云科技有限公司 | 提高区块链的吞吐量的方法、装置 |
CN113949742B (zh) * | 2021-09-18 | 2023-11-10 | 深圳时空云科技有限公司 | 提高区块链的吞吐量的方法、装置 |
CN115271746A (zh) * | 2022-09-27 | 2022-11-01 | 江苏荣泽信息科技股份有限公司 | 一种带优先级的区块链交易排序算法 |
CN117994038A (zh) * | 2024-04-03 | 2024-05-07 | 湖南天河国云科技有限公司 | 基于区块链的交易处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112491983A (zh) | 基于区块链的智能合约调度方法、装置、设备及存储介质 | |
US9645848B2 (en) | Scheduling homogeneous and heterogeneous workloads with runtime elasticity in a parallel processing environment | |
CN112003787B (zh) | 一种路由路径确定方法、装置、控制设备和存储介质 | |
EP1538497A2 (en) | Distributed real time operating system | |
CN102594891A (zh) | 用于处理远程过程调用请求的方法及系统 | |
US11507419B2 (en) | Method,electronic device and computer program product for scheduling computer resources in a task processing environment | |
CN111782355B (zh) | 一种基于混合负载的云计算任务调度方法及系统 | |
CN111210136A (zh) | 一种机器人任务调度的方法及服务器 | |
CN110555079B (zh) | 数据处理方法、装置、设备以及存储介质 | |
CN107291544A (zh) | 任务调度的方法及装置、分布式任务执行系统 | |
CN113132456B (zh) | 一种基于截止时间感知的边云协同任务调度方法及系统 | |
CN112905342A (zh) | 资源调度方法、装置、设备及计算机可读存储介质 | |
CN104040524A (zh) | 用于存储服务器的流量控制机制 | |
CN115361333B (zh) | 一种基于QoS边缘自适应的网云融合信息传输方法 | |
CN110430142A (zh) | 用于控制流量的方法和装置 | |
CN112202595A (zh) | 基于时间敏感网络系统的抽象模型构建方法 | |
Stavrinides et al. | Cost‐aware cloud bursting in a fog‐cloud environment with real‐time workflow applications | |
CN109995787A (zh) | 一种数据处理方法及相关设备 | |
CN104052677A (zh) | 单一数据源的软负载均衡方法和装置 | |
CN112506658B (zh) | 一种服务链中动态资源分配和任务调度方法 | |
CN112202596A (zh) | 基于时间敏感网络系统的抽象模型构建装置 | |
CN109388482A (zh) | 任务的调度方法、装置及存储介质 | |
CN116821187A (zh) | 基于数据库的数据处理方法、装置、介质和电子设备 | |
CN108228323B (zh) | 基于数据本地性的Hadoop任务调度方法及装置 | |
CN107018201B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210312 |