CN115271746A - 一种带优先级的区块链交易排序算法 - Google Patents
一种带优先级的区块链交易排序算法 Download PDFInfo
- Publication number
- CN115271746A CN115271746A CN202211178144.7A CN202211178144A CN115271746A CN 115271746 A CN115271746 A CN 115271746A CN 202211178144 A CN202211178144 A CN 202211178144A CN 115271746 A CN115271746 A CN 115271746A
- Authority
- CN
- China
- Prior art keywords
- transaction
- priority
- queue
- attribute
- 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.)
- Granted
Links
Images
Classifications
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/405—Establishing or using transaction specific rules
-
- 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
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于区块链领域,涉及交易处理分析技术,用于解决传统的区块链交易排序算法将所有交易无差别的按照时间顺序排队,导致链参数配置、链码生命周期管理等系统操作无法及时生效的问题,具体是一种带优先级的区块链交易排序算法,包括以下步骤:生成交易周期,对交易周期内的所有交易进行优先级匹配,优先级包括高优先级、中优先级以及低优先级;在交易周期之内队列生成模块根据不同优先级维护多个队列;本发明对区块链交易进行排序并生成队列,使区块链参数设置、链码生命周期管理等操作能够及时生效,结合队列执行模块对交易周期内的队列交易进行严格执行,进一步保证区块链参数设置、链码生命周期管理等操作生效的效率。
Description
技术领域
本发明属于区块链领域,涉及交易处理分析技术,具体是一种带优先级的区块链交易排序算法。
背景技术
在区块链平台中,为了保障全程可追溯,区块链的相关参数配置、链码生命周期管理过程等系统操作也需要记录到区块中,传统的区块链交易排序算法是将所有交易无差别的按照时间顺序排队,当业务量比较大时,区块链相关参数配置、链码管理等系统操作等待落块,导致链参数配置、链码生命周期管理等系统操作无法及时生效的问题;同时,采用固定排序进行交易处理时会导致交易处理效率低下的问题。
针对上述技术问题,本申请提出一种解决方案。
发明内容
本发明的目的在于提供一种带优先级的区块链交易排序算法,用于解决传统的区块链交易排序算法将所有交易无差别的按照时间顺序排队,导致链参数配置、链码生命周期管理等系统操作无法及时生效的问题。
本发明需要解决的技术问题为:如何提供一种可以保证链参数配置、链码生命周期管理等系统操作及时生效的带优先级的区块链交易排序算法。
本发明的目的可以通过以下技术方案实现:
一种带优先级的区块链交易排序算法,包括以下步骤:
步骤一:对区块链交易进行排序并生成队列:生成交易周期,对交易周期内的所有交易进行优先级匹配,优先级包括高优先级、中优先级以及低优先级;
步骤二:在交易周期之内队列生成模块根据不同优先级维护多个队列,队列生成模块接收到交易后,根据优先级排到对应的队列,共识子系统生成新区块时,首先从高优先级队列开始打包交易、写入区块;
步骤三:采用队列执行模块对交易周期内的队列进行交易检查分析;
步骤四:采用排序分析模块对队列生成模块的队列生成合理性进行分析:将队列生成模块生成的交易排序标记为旧序,获取队列执行模块通过旧序对交易周期内的队列进行交易检查分析的高级属性值、中级属性值以及低级属性值的数值,将高级属性值、中级属性值以及低级属性值与交易数量的比值标记为高级比、中级比以及低级比,获取分布阈值,将高级比、中级比以及低级比逐一与分布阈值进行比较并通过比较结果生成新序;
步骤五:采用新序执行模块通过新序对交易周期内的队列进行交易检查分析;
步骤六:采用动态调节模块对新序进行动态调节分析。
作为本发明的一种优选实施方式,在步骤一中,对交易进行优先级匹配的过程包括:将区块链参数配置相关交易的优先级标记为高优先级;将链码生命周期管理系统合约产生的交易的优先级标记为中优先级;将普通用户合约产生的交易优先级标记为低优先级。
作为本发明的一种优选实施方式,在步骤三中:采用队列执行模块对交易周期内的队列进行交易检查分析的过程包括以下步骤:
步骤S1:将高级属性值、中级属性值以及低级属性值的数值清零;
步骤S2:节点首先检查高优先级队列是否有交易:
若高优先级队列有交易,则将单个交易打包成一个区块,完成落块,高级属性值的数值加一,重新执行步骤S2;
若高优先级队列没有交易,则执行步骤S3;
步骤S3:检查中优先级队列是否有交易:
若中优先级队列有交易,则将单个交易打包成一个区块,完成落块,中级属性值的数值加一,重新执行步骤S2;
若中优先级队列没有交易,则执行步骤S4;
步骤S4:检查低优先级队列是否有交易:
若低优先级队列有交易,则根据区块链参数配置将一个或多个交易打包成区块,完成落块,低级属性值的数值加一,重新执行步骤S4;
若低优先级队列没有交易,则在下一交易周期开始时,执行步骤S1。
作为本发明的一种优选实施方式,在步骤四中:将高级比、中级比以及低级比逐一与分布阈值进行比较的比较过程包括:
若高级比、中级比以及低级比均不大于分布阈值,则将对应的交易周期标记为平衡周期,在下一交易周期开始时队列执行模块按照旧序进行交易检查分析;
若高级比、中级比以及低级比中存在有大于分布阈值的数值,则将对应的交易周期标记为倾斜周期,将大于分布阈值的数值对应的优先级属性标记为倾斜属性,对倾斜属性的优先级进行判定:
若倾斜属性的优先级为高优先级,则在下一交易周期开始时队列执行模块按照旧序进行交易检查分析;
若倾斜属性的优先级不为高优先级,则将倾斜属性的优先级标记为第一优先级,将高优先级标记为第二优先级,将剩余优先级标记为第三优先级,以第一优先级-第二优先级-第三优先级的排列顺序生成新序并将新序发送至新序执行模块,有新序执行模块执行下一交易周期的交易检查分析。
作为本发明的一种优选实施方式,在步骤五中,采用新序执行模块通过新序对交易周期内的队列进行交易检查分析的具体过程包括:
步骤P1:获取第一优先级在上一交易周期对应的处理步骤的处理时长并标记为SC,将SC/2标记为复查时长;
步骤P2:判定步骤P2的处理时长是否大于复查时长:若是,则采取旧序执行交易检查分析,若采取旧序执行交易检查分析过程中高级属性值的数值不为零,将新序执行交易检查分析的前段属性标记为调节属性;若采取旧序执行交易检查分析过程中高级属性值的数值为零,将新序执行交易检查分析的前段属性标记为优化属性;若否,节点首先检查第一优先级队列是否有交易:
若第一优先级队列有交易,则将单个交易打包成一个区块,完成落块,第一属性值的数值加一,重新执行步骤P2;
若第一优先级队列没有交易,则执行步骤P3;
步骤P3:检查第二优先级队列是否有交易:
若第二优先级队列有交易,则将单个交易打包成一个区块,完成落块,第二级属性值的数值加一,重新执行步骤P2;
若第二优先级队列没有交易,判定第二属性值的数值是否为零,若是,则将新序执行交易检查分析的后段属性标记为优化属性;若不是,则将新序执行交易检查分析的后段属性标记为调节属性;执行步骤P4;
步骤P4:检查第三优先级队列是否有交易:
若第三优先级队列有交易,则根据区块链参数配置将一个或多个交易打包成区块,完成落块,第三属性值的数值加一,重新执行步骤P2;
若低优先级队列没有交易,则在下一交易周期开始时,执行步骤P1。
作为本发明的一种优选实施方式,在步骤六中,采用动态调节模块对新序进行动态调节分析的具体过程包括:采用新序对交易周期内的队列进行交易检查分析时,获取新序执行交易检查分析的前端属性和后端属性并进行比对分析:
若前端属性与后端属性均为优化属性,则在下一交易周期开始时继续采用新序进行交易检查分析;
若前端属性为优化属性的同时后端属性为调节属性,则在下一交易周期开始时继续采用新序进行交易检查分析,同时将复查时长的数值调节至SC*2/3;
若前端属性为调节属性的同时后端属性为优化属性,则在下一交易周期开始时继续采用新序进行交易检查分析,同时将复查时长的数值调节至SC/3;
若前端属性与后端属性均为调节属性,则在下一交易周期开始时采用旧序进行交易检查分析。
本发明具备下述有益效果:
1、通过队列生成模块可以对区块链交易进行排序并生成队列,从而使区块链参数设置、链码生命周期管理等操作能够及时生效,在遵循高优先级-中优先级-低优先级的顺序的前提下,按照优先级匹配规则对每一个任务进行优先级匹配,结合队列执行模块对交易周期内的队列交易进行严格执行,进一步保证区块链参数设置、链码生命周期管理等操作生效的效率;
2、通过排序分析模块可以对优先级队列中的优先级属性分布状态进行分析,通过高级比、中级比以及低级比的数值判定上一交易周期是否存在优先级属性倾斜的现象,从而根据优先级属性倾斜状态生成新序,通过新序对队列处理顺序进行及时更新与动态调节,在保证区块链参数设置、链码生命周期管理等操作生效效率的同时,还可以保证整体的任务处理效率;
3、通过新序执行模块可以采用新序对队列进行交易检查分析,同时在固定时刻掺插旧序进行综合分析,动态调节模块结合综合分析结果对下一周期的队列交易检查顺序进行选择或复查时长调节,进而保证每一次交易周期的交易检查顺序均能够以上一交易周期的实际处理状态作为依据进行动态选择。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明整体的系统框图;
图2为本发明实施例一的系统框图;
图3为本发明实施例二的系统框图;
图4为本发明实施例三的算法流程图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图1所示,一种带优先级的区块链交易排序系统,包括服务器,服务器通信连接有队列生成模块、队列执行模块、排序分析模块、新序执行模块以及动态调节模块。
实施例一
在区块链平台中,区块链的相关参数配置、链码生命周期管理过程等系统操作也是记录到区块中,保障全程可追溯;传统上所有交易无差别的按照时间顺序排队,当业务量比较大时,区块链相关参数配置、链码管理等系统操作等待落块,无法及时生效。
如图2所示,队列生成模块用于对区块链交易进行排序并生成队列:生成交易周期,对交易周期内的所有交易进行优先级匹配,优先级包括高优先级、中优先级以及低优先级,对交易进行优先级匹配的过程包括:将区块链参数配置相关交易的优先级标记为高优先级;将链码生命周期管理系统合约产生的交易的优先级标记为中优先级;将普通用户合约产生的交易优先级标记为低优先级;
客户端调用SDK提交交易到排序节点;排序节点根据交易类型及合约类型判定交易优先级;排序节点根据交易优先级及提交时序将交易排到对应的队列;排序节点返回提交响应给客户端。在交易周期之内队列生成模块根据不同优先级维护多个队列,队列生成模块接收到交易后,根据优先级排到对应的队列,共识子系统生成新区块时,首先从高优先级队列开始打包交易、写入区块;对区块链交易进行排序并生成队列,从而使区块链参数设置、链码生命周期管理等操作能够及时生效,在遵循高优先级-中优先级-低优先级的顺序的前提下,按照优先级匹配规则对每一个任务进行优先级匹配,结合队列执行模块对交易周期内的队列交易进行严格执行,进一步保证区块链参数设置、链码生命周期管理等操作生效的效率。
队列执行模块用于对交易周期内的队列进行交易检查分析,对交易周期内的队列进行交易检查分析的过程包括以下步骤:
步骤S1:将高级属性值、中级属性值以及低级属性值的数值清零;
步骤S2:节点首先检查高优先级队列是否有交易:
若高优先级队列有交易,则将单个交易打包成一个区块,完成落块,高级属性值的数值加一,重新执行步骤S2;
若高优先级队列没有交易,则执行步骤S3;
步骤S3:检查中优先级队列是否有交易:
若中优先级队列有交易,则将单个交易打包成一个区块,完成落块,中级属性值的数值加一,重新执行步骤S2;
若中优先级队列没有交易,则执行步骤S4;
步骤S4:检查低优先级队列是否有交易:
若低优先级队列有交易,则根据区块链参数配置将一个或多个交易打包成区块,完成落块,低级属性值的数值加一,重新执行步骤S4;
若低优先级队列没有交易,则在下一交易周期开始时,执行步骤S1。
对交易周期内的队列交易进行严格执行,保证区块链参数设置、链码生命周期管理等操作生效的效率。
实施例二
在实施例一的基础上,区块链参数设置、链码生命周期管理等操作生效可以得到保障,但是在每一个交易周期当中,高优先级、中优先级以及低优先级的占比分布情况不同,高优先级的上传时间也不固定,因此采用单一的交易检查顺序进行队列交易处理会导致整体的处理效率低下,以下实施方式可以结合交易周期内各优先级分布状态以及高优先级的上传时间对交易检查顺序进行动态调节。
如图3所示,排序分析模块用于根据队列执行模块的效率对队列生成模块的队列生成合理性进行分析:将队列生成模块生成的交易排序(高优先级-中优先级-低优先级)标记为旧序,获取队列执行模块通过旧序对交易周期内的队列进行交易检查分析的高级属性值、中级属性值以及低级属性值的数值,将高级属性值、中级属性值以及低级属性值与交易数量的比值标记为高级比、中级比以及低级比,获取分布阈值,将高级比、中级比以及低级比逐一与分布阈值进行比较:若高级比、中级比以及低级比均不大于分布阈值,则将对应的交易周期标记为平衡周期,在下一交易周期开始时队列执行模块按照旧序进行交易检查分析;若高级比、中级比以及低级比中存在有大于分布阈值的数值,则将对应的交易周期标记为倾斜周期,将大于分布阈值的数值对应的优先级属性标记为倾斜属性,对倾斜属性的优先级进行判定:若倾斜属性的优先级为高优先级,则在下一交易周期开始时队列执行模块按照旧序进行交易检查分析;若倾斜属性的优先级不为高优先级,则将倾斜属性的优先级标记为第一优先级,将高优先级标记为第二优先级,将剩余优先级标记为第三优先级,以第一优先级-第二优先级-第三优先级的排列顺序生成新序并将新序发送至新序执行模块,由新序执行模块执行下一交易周期的交易检查分析;对优先级队列中的优先级属性分布状态进行分析,通过高级比、中级比以及低级比的数值判定上一交易周期是否存在优先级属性倾斜的现象,从而根据优先级属性倾斜状态生成新序,通过新序对队列处理顺序进行及时更新与动态调节,在保证区块链参数设置、链码生命周期管理等操作生效效率的同时,还可以保证整体的任务处理效率。
新序执行模块用于通过新序对交易周期内的队列进行交易检查分析,通过新序对交易周期内的队列进行交易检查分析的过程包括以下步骤:
步骤P1:获取第一优先级在上一交易周期对应的处理步骤的处理时长并标记为SC,将SC/2标记为复查时长;
步骤P2:判定步骤P2的处理时长是否大于复查时长:若是,则采取旧序执行交易检查分析,若采取旧序执行交易检查分析过程中高级属性值的数值不为零,将新序执行交易检查分析的前段属性标记为调节属性;若采取旧序执行交易检查分析过程中高级属性值的数值为零,将新序执行交易检查分析的前段属性标记为优化属性;若否,节点首先检查第一优先级队列是否有交易:
若第一优先级队列有交易,则将单个交易打包成一个区块,完成落块,第一属性值的数值加一,重新执行步骤P2;
若第一优先级队列没有交易,则执行步骤P3;
步骤P3:检查第二优先级队列是否有交易:
若第二优先级队列有交易,则将单个交易打包成一个区块,完成落块,第二级属性值的数值加一,重新执行步骤P2;
若第二优先级队列没有交易,判定第二属性值的数值是否为零,若是,则将新序执行交易检查分析的后段属性标记为优化属性;若不是,则将新序执行交易检查分析的后段属性标记为调节属性;执行步骤P4;
步骤P4:检查第三优先级队列是否有交易:
若第三优先级队列有交易,则根据区块链参数配置将一个或多个交易打包成区块,完成落块,第三属性值的数值加一,重新执行步骤P2;
若低优先级队列没有交易,则在下一交易周期开始时,执行步骤P1。
动态调节模块用于对新序进行动态调节分析:采用新序对交易周期内的队列进行交易检查分析时,获取新序执行交易检查分析的前端属性和后端属性并进行比对分析:若前端属性与后端属性均为优化属性,则在下一交易周期开始时继续采用新序进行交易检查分析;若前端属性为优化属性的同时后端属性为调节属性,则在下一交易周期开始时继续采用新序进行交易检查分析,同时将复查时长的数值调节至SC*2/3;若前端属性为调节属性的同时后端属性为优化属性,则在下一交易周期开始时继续采用新序进行交易检查分析,同时将复查时长的数值调节至SC/3;若前端属性与后端属性均为调节属性,则在下一交易周期开始时采用旧序进行交易检查分析;采用新序对队列进行交易检查分析,同时在固定时刻掺插旧序进行综合分析,动态调节模块结合综合分析结果对下一周期的队列交易检查顺序进行选择或复查时长调节,进而保证每一次交易周期的交易检查顺序均能够以上一交易周期的实际处理状态作为依据进行动态选择。
实施例三
如图4所示,一种带优先级的区块链交易排序算法,包括以下步骤:
步骤一:对区块链交易进行排序并生成队列:生成交易周期,对交易周期内的所有交易进行优先级匹配,优先级包括高优先级、中优先级以及低优先级,结合队列执行模块对交易周期内的队列交易进行严格执行,保证区块链参数设置、链码生命周期管理等操作生效的效率;
步骤二:在交易周期之内队列生成模块根据不同优先级维护多个队列,队列生成模块接收到交易后,根据优先级排到对应的队列,共识子系统生成新区块时,首先从高优先级队列开始打包交易、写入区块;
步骤三:采用队列执行模块对交易周期内的队列进行交易检查分析;
步骤四:采用排序分析模块根据队列执行模块的效率对队列生成模块的队列生成合理性进行分析:将队列生成模块生成的交易排序(高优先级-中优先级-低优先级)标记为旧序,获取队列执行模块通过旧序对交易周期内的队列进行交易检查分析的高级属性值、中级属性值以及低级属性值的数值,将高级属性值、中级属性值以及低级属性值与交易数量的比值标记为高级比、中级比以及低级比,获取分布阈值,将高级比、中级比以及低级比逐一与分布阈值进行比较并通过比较结果生成新序;
步骤五:采用新序执行模块通过新序对交易周期内的队列进行交易检查分析,在保证区块链参数设置、链码生命周期管理等操作生效效率的同时,还可以保证整体的任务处理效率;
步骤六:采用动态调节模块对新序进行动态调节分析,保证每一次交易周期的交易检查顺序均能够以上一交易周期的实际处理状态作为依据进行动态选择。
一种带优先级的区块链交易排序算法,工作时,对区块链交易进行排序并生成队列:生成交易周期,对交易周期内的所有交易进行优先级匹配,优先级包括高优先级、中优先级以及低优先级;在交易周期之内队列生成模块根据不同优先级维护多个队列,队列生成模块接收到交易后,根据优先级排到对应的队列,共识子系统生成新区块时,首先从高优先级队列开始打包交易、写入区块;采用队列执行模块对交易周期内的队列进行交易检查分析;采用排序分析模块根据队列执行模块的效率对队列生成模块的队列生成合理性进行分析,在下一交易周期开始时进行排序规则选择。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (6)
1.一种带优先级的区块链交易排序算法,其特征在于,包括以下步骤:
步骤一:对区块链交易进行排序并生成队列:生成交易周期,对交易周期内的所有交易进行优先级匹配,优先级包括高优先级、中优先级以及低优先级;
步骤二:在交易周期之内队列生成模块根据不同优先级维护多个队列,队列生成模块接收到交易后,根据优先级排到对应的队列,共识子系统生成新区块时,首先从高优先级队列开始打包交易、写入区块;
步骤三:采用队列执行模块对交易周期内的队列进行交易检查分析;
步骤四:采用排序分析模块对队列生成模块的队列生成合理性进行分析:将队列生成模块生成的交易排序标记为旧序,获取队列执行模块通过旧序对交易周期内的队列进行交易检查分析的高级属性值、中级属性值以及低级属性值的数值,将高级属性值、中级属性值以及低级属性值与交易数量的比值标记为高级比、中级比以及低级比,获取分布阈值,将高级比、中级比以及低级比逐一与分布阈值进行比较并通过比较结果生成新序;
步骤五:采用新序执行模块通过新序对交易周期内的队列进行交易检查分析;
步骤六:采用动态调节模块对新序进行动态调节分析。
2.根据权利要求1所述的一种带优先级的区块链交易排序算法,其特征在于,在步骤一中,对交易进行优先级匹配的过程包括:将区块链参数配置相关交易的优先级标记为高优先级;将链码生命周期管理系统合约产生的交易的优先级标记为中优先级;将普通用户合约产生的交易优先级标记为低优先级。
3.根据权利要求1所述的一种带优先级的区块链交易排序算法,其特征在于,在步骤三中:采用队列执行模块对交易周期内的队列进行交易检查分析的过程包括以下步骤:
步骤S1:将高级属性值、中级属性值以及低级属性值的数值清零;
步骤S2:节点首先检查高优先级队列是否有交易:
若高优先级队列有交易,则将单个交易打包成一个区块,完成落块,高级属性值的数值加一,重新执行步骤S2;
若高优先级队列没有交易,则执行步骤S3;
步骤S3:检查中优先级队列是否有交易:
若中优先级队列有交易,则将单个交易打包成一个区块,完成落块,中级属性值的数值加一,重新执行步骤S2;
若中优先级队列没有交易,则执行步骤S4;
步骤S4:检查低优先级队列是否有交易:
若低优先级队列有交易,则根据区块链参数配置将一个或多个交易打包成区块,完成落块,低级属性值的数值加一,重新执行步骤S4;
若低优先级队列没有交易,则在下一交易周期开始时,执行步骤S1。
4.根据权利要求3所述的一种带优先级的区块链交易排序算法,其特征在于,在步骤四中:将高级比、中级比以及低级比逐一与分布阈值进行比较的比较过程包括:
若高级比、中级比以及低级比均不大于分布阈值,则将对应的交易周期标记为平衡周期,在下一交易周期开始时队列执行模块按照旧序进行交易检查分析;
若高级比、中级比以及低级比中存在有大于分布阈值的数值,则将对应的交易周期标记为倾斜周期,将大于分布阈值的数值对应的优先级属性标记为倾斜属性,对倾斜属性的优先级进行判定:
若倾斜属性的优先级为高优先级,则在下一交易周期开始时队列执行模块按照旧序进行交易检查分析;
若倾斜属性的优先级不为高优先级,则将倾斜属性的优先级标记为第一优先级,将高优先级标记为第二优先级,将剩余优先级标记为第三优先级,以第一优先级-第二优先级-第三优先级的排列顺序生成新序并将新序发送至新序执行模块,由新序执行模块执行下一交易周期的交易检查分析。
5.根据权利要求4所述的一种带优先级的区块链交易排序算法,其特征在于,在步骤五中,采用新序执行模块通过新序对交易周期内的队列进行交易检查分析的具体过程包括:
步骤P1:获取第一优先级在上一交易周期对应的处理步骤的处理时长并标记为SC,将SC/2标记为复查时长;
步骤P2:判定步骤P2的处理时长是否大于复查时长:若是,则采取旧序执行交易检查分析,若采取旧序执行交易检查分析过程中高级属性值的数值不为零,将新序执行交易检查分析的前段属性标记为调节属性;若采取旧序执行交易检查分析过程中高级属性值的数值为零,将新序执行交易检查分析的前段属性标记为优化属性;若否,节点首先检查第一优先级队列是否有交易:
若第一优先级队列有交易,则将单个交易打包成一个区块,完成落块,第一属性值的数值加一,重新执行步骤P2;
若第一优先级队列没有交易,则执行步骤P3;
步骤P3:检查第二优先级队列是否有交易:
若第二优先级队列有交易,则将单个交易打包成一个区块,完成落块,第二级属性值的数值加一,重新执行步骤P2;
若第二优先级队列没有交易,判定第二属性值的数值是否为零,若是,则将新序执行交易检查分析的后段属性标记为优化属性;若不是,则将新序执行交易检查分析的后段属性标记为调节属性;执行步骤P4;
步骤P4:检查第三优先级队列是否有交易:
若第三优先级队列有交易,则根据区块链参数配置将一个或多个交易打包成区块,完成落块,第三属性值的数值加一,重新执行步骤P2;
若低优先级队列没有交易,则在下一交易周期开始时,执行步骤P1。
6.根据权利要求5所述的一种带优先级的区块链交易排序算法,其特征在于,在步骤六中,采用动态调节模块对新序进行动态调节分析的具体过程包括:采用新序对交易周期内的队列进行交易检查分析时,获取新序执行交易检查分析的前端属性和后端属性并进行比对分析:
若前端属性与后端属性均为优化属性,则在下一交易周期开始时继续采用新序进行交易检查分析;
若前端属性为优化属性的同时后端属性为调节属性,则在下一交易周期开始时继续采用新序进行交易检查分析,同时将复查时长的数值调节至SC*2/3;
若前端属性为调节属性的同时后端属性为优化属性,则在下一交易周期开始时继续采用新序进行交易检查分析,同时将复查时长的数值调节至SC/3;
若前端属性与后端属性均为调节属性,则在下一交易周期开始时采用旧序进行交易检查分析。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211178144.7A CN115271746B (zh) | 2022-09-27 | 2022-09-27 | 一种带优先级的区块链交易排序方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211178144.7A CN115271746B (zh) | 2022-09-27 | 2022-09-27 | 一种带优先级的区块链交易排序方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115271746A true CN115271746A (zh) | 2022-11-01 |
CN115271746B CN115271746B (zh) | 2023-01-31 |
Family
ID=83757091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211178144.7A Active CN115271746B (zh) | 2022-09-27 | 2022-09-27 | 一种带优先级的区块链交易排序方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115271746B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108062672A (zh) * | 2017-12-07 | 2018-05-22 | 北京泛融科技有限公司 | 一种基于区块链智能合约的流程调度方法 |
CN109544332A (zh) * | 2018-10-17 | 2019-03-29 | 贵阳信息技术研究院(中科院软件所贵阳分部) | 一种基于用户等级的区块链交易出块的方法 |
US20190354397A1 (en) * | 2018-05-15 | 2019-11-21 | International Business Machines Corporation | Prioritization in a permissioned blockchain |
CN110738497A (zh) * | 2019-12-19 | 2020-01-31 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、节点设备及存储介质 |
CN110838065A (zh) * | 2019-10-24 | 2020-02-25 | 腾讯云计算(北京)有限责任公司 | 一种交易数据处理方法及装置 |
CN111415259A (zh) * | 2020-03-26 | 2020-07-14 | 杭州复杂美科技有限公司 | 交易排队方法、设备和存储介质 |
CN111489160A (zh) * | 2020-04-16 | 2020-08-04 | 北京中电飞华通信有限公司 | 基于区块链的电力交易方法、装置、设备及介质 |
CN112491983A (zh) * | 2020-11-13 | 2021-03-12 | 南方科技大学 | 基于区块链的智能合约调度方法、装置、设备及存储介质 |
CN112804233A (zh) * | 2021-01-15 | 2021-05-14 | 欧冶云商股份有限公司 | 一种面向区块链多通道的区块打包方法、装置及存储介质 |
WO2021113967A1 (en) * | 2019-12-13 | 2021-06-17 | DLT Global Inc. | Blockchain transaction manager |
CN113362062A (zh) * | 2021-05-21 | 2021-09-07 | 山东大学 | 一种区块链交易排序方法、存储介质及设备 |
CN113628049A (zh) * | 2021-07-21 | 2021-11-09 | 三峡大学 | 一种基于群体智能的区块链智能合约的冲突裁决方法 |
CN114493875A (zh) * | 2022-01-28 | 2022-05-13 | 杭州复杂美科技有限公司 | 交易执行方法、计算机设备和存储介质 |
-
2022
- 2022-09-27 CN CN202211178144.7A patent/CN115271746B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108062672A (zh) * | 2017-12-07 | 2018-05-22 | 北京泛融科技有限公司 | 一种基于区块链智能合约的流程调度方法 |
US20190354397A1 (en) * | 2018-05-15 | 2019-11-21 | International Business Machines Corporation | Prioritization in a permissioned blockchain |
CN109544332A (zh) * | 2018-10-17 | 2019-03-29 | 贵阳信息技术研究院(中科院软件所贵阳分部) | 一种基于用户等级的区块链交易出块的方法 |
CN110838065A (zh) * | 2019-10-24 | 2020-02-25 | 腾讯云计算(北京)有限责任公司 | 一种交易数据处理方法及装置 |
WO2021113967A1 (en) * | 2019-12-13 | 2021-06-17 | DLT Global Inc. | Blockchain transaction manager |
CN110738497A (zh) * | 2019-12-19 | 2020-01-31 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、节点设备及存储介质 |
CN111415259A (zh) * | 2020-03-26 | 2020-07-14 | 杭州复杂美科技有限公司 | 交易排队方法、设备和存储介质 |
CN111489160A (zh) * | 2020-04-16 | 2020-08-04 | 北京中电飞华通信有限公司 | 基于区块链的电力交易方法、装置、设备及介质 |
CN112491983A (zh) * | 2020-11-13 | 2021-03-12 | 南方科技大学 | 基于区块链的智能合约调度方法、装置、设备及存储介质 |
CN112804233A (zh) * | 2021-01-15 | 2021-05-14 | 欧冶云商股份有限公司 | 一种面向区块链多通道的区块打包方法、装置及存储介质 |
CN113362062A (zh) * | 2021-05-21 | 2021-09-07 | 山东大学 | 一种区块链交易排序方法、存储介质及设备 |
CN113628049A (zh) * | 2021-07-21 | 2021-11-09 | 三峡大学 | 一种基于群体智能的区块链智能合约的冲突裁决方法 |
CN114493875A (zh) * | 2022-01-28 | 2022-05-13 | 杭州复杂美科技有限公司 | 交易执行方法、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115271746B (zh) | 2023-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108595157B (zh) | 区块链数据的处理方法、装置、设备和存储介质 | |
CN112162865B (zh) | 服务器的调度方法、装置和服务器 | |
US6571215B1 (en) | System and method for generating a schedule based on resource assignments | |
Manolache et al. | Schedulability analysis of applications with stochastic task execution times | |
Khemakhem et al. | Efficient robustness measures for the resource-constrained project scheduling problem | |
CN104182278B (zh) | 一种判定计算机硬件资源繁忙程度的方法和装置 | |
CN112214319A (zh) | 一种计算资源感知的任务调度方法 | |
US20210200585A1 (en) | System for real-time scheduling in an ansynchronous transfer mode communication network | |
Li et al. | Endpoint-flexible coflow scheduling across geo-distributed datacenters | |
Matani et al. | A fault-tolerant workflow scheduling algorithm for grid with near-optimal redundancy | |
CN115202847A (zh) | 任务的调度方法和装置 | |
CN114911613A (zh) | 一种云际计算环境中跨集群资源高可用调度方法及系统 | |
CN115271746B (zh) | 一种带优先级的区块链交易排序方法 | |
CN115543577B (zh) | 基于协变量的Kubernetes资源调度优化方法、存储介质及设备 | |
Richard et al. | Allocating and scheduling tasks in multiple fieldbus real-time systems | |
CN113010310A (zh) | 作业数据的处理方法、装置和服务器 | |
Kunz et al. | Predicting runtime performance bounds of expanded parallel discrete event simulations | |
CN110737572B (zh) | 大数据平台资源抢占测试方法、系统、终端及存储介质 | |
US20080126036A1 (en) | System and method for scheduling token arrival in a business process simulation | |
Shao et al. | A market-oriented heuristic algorithm for scheduling parallel applications in big data service platform | |
Mailach | Robustness to estimation errors for size-aware scheduling | |
Ghit et al. | Reducing job slowdown variability for data-intensive workloads | |
JP2001320386A (ja) | 電子システム | |
Goldsztajn et al. | Utility maximizing load balancing policies | |
Genquan et al. | Applying genetic algorithm to optimise personal worklist management in workflow systems |
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 |