CN116909724A - 区块链内存回收方法和装置 - Google Patents
区块链内存回收方法和装置 Download PDFInfo
- Publication number
- CN116909724A CN116909724A CN202211551185.6A CN202211551185A CN116909724A CN 116909724 A CN116909724 A CN 116909724A CN 202211551185 A CN202211551185 A CN 202211551185A CN 116909724 A CN116909724 A CN 116909724A
- Authority
- CN
- China
- Prior art keywords
- task data
- memory
- target memory
- task
- recovery
- 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
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000004064 recycling Methods 0.000 title claims description 12
- 238000011084 recovery Methods 0.000 claims abstract description 63
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000013523 data management Methods 0.000 abstract description 3
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及区块链技术领域,尤其涉及一种区块链内存回收方法和装置。一种区块链内存回收方法,应用于节点终端,包括:在业务应用内根据智能合约执行区块链任务;将执行所述区块链任务所产生的任务数据存储至为所述智能合约分配的目标内存中;根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收。本发明实施例从已存储的数据管理角度考虑,预设任务数据回收算法,当存储空间不足时,通过内存回收算法清理已过时效的数据,对内存进行动态管理,以缓解内存的存储压力。
Description
【技术领域】
本申请涉及区块链技术领域,尤其涉及一种区块链内存回收方法和装置。
【背景技术】
区块链是一种由节点参与的分布式数据库系统,系统中的每个节点都需要存储相同的数据,将分布式节点的存储资源对全网节点进行存储同步,并通过共识技术保证内部节点对存储内容更改的有效性,维护一个完整的可查找的数据库。
商用分布式设计区块链系统(Enterprise Operation System,EOS)是一种为商用分布式应用设计的一款区块链操作系统,能够支撑各类去中心化应用在该系统上的扩展,提供账户、身份认证、数据库、异步通信以及跨多个集群的应用程序调度等功能,从而进一步构建一个能够支撑每秒数百万笔交易、免除交易费用、且各类去中心化应用能够快速便捷部署的区块链架构体系。
但是在EOS上的操作会产生许多任务数据用于记录操作信息,随着产生任务数据不断增加,用于对任务数据进行存储的内存资源会逐渐耗尽,当内存达到存储上限时,就无法存入新的任务数据。
【发明内容】
有鉴于此,本发明实施例提供了一种区块链内存回收方法和装置,通过预设任务数据回收规则,当内存空间不足时利用任务数据回收规则对内存进行回收从而解决存储资源不足的问题。
第一方面,本发明实施例提供了一种区块链内存回收方法,所述方法应用于节点终端,所述方法包括:
在业务应用内根据智能合约执行区块链任务;
将执行所述区块链任务所产生的任务数据存储至为所述智能合约分配的目标内存中;
根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收。
可选的,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,包括:
按照预设的时间间隔执行对所述目标内存中所述任务数据的进行回收。
可选的,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,包括:
确定所述目标内存中的内存用量是否大于第一阈值;
如果所述目标内存中的内存用量大于第一阈值,则执行对所述目标内存的数据回收。
可选的,所述如果所述目标内存中的内存用量大于第一阈值,则执行对所述目标内存的数据回收,包括:
在执行对所述目标内存的数据回收时,确定所述目标内存的内存用量是否下降到第二阈值;
当所述目标内存的内存用量通过数据回收下降到第二阈值时,停止对所述目标内存执行任务数据的回收。
可选的,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,包括:
对所述目标内存中符合预设数据条件的任务数据进行回收。
可选的,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,包括:
根据所述目标内存中任务数据被引用的次数或者任务数据被访问的次数,确定回收优先级;
按照所述回收优先级由高到低的顺序,执行对所述目标内存中任务数据的回收;
其中,引用次数少的任务数据的回收优先级高于引用次数多的任务数据,或者,被访问次数少的任务数据的回收优先级高于被访问次数多的任务数据。
可选的,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,包括:
从所述任务数据中确定可利用任务数据,将所述可利用任务数据存储至所述目标内存的安全空间;
对所述任务数据中除所述可利用任务数据之外的任务数据进行回收。
第二方面,本发明实施例提供了一种区块链内存回收装置,包括:
执行模块,在业务应用内根据智能合约执行区块链任务;
存储模块,将执行所述区块链任务所产生的任务数据存储至为所述智能合约分配的目标内存中;
回收模块,根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收。
第三方面,本发明实施例提供了一种区块链内存回收设备,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如第一方面任一项所述的方法。
可选的一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行第一方面任一所述的方法。
通过上述方案,利用任务数据回收规则清理已过时效的数据,对内存进行动态管理,以缓解存储压力,难度低、易实现,无需额外的硬件成本。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种区块链内存回收系统的结构示意图;
图2为本发明实施例提供的一种区块链内存回收方法的流程图;
图3为本发明实施例提供的一种区块链内存回收装置的结构示意图;
图4为本发明实施例提供的一种电子设备的结构示意图。
【具体实施方式】
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,本发明所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在执行区块链任务时,区块链平台会产生记录区块链任务过程的任务数据。所产生的任务数据需要被记录并存储下来以方便在日后进行查询。但是在对任务数据进行存储的过程中,随着数据量的不断增加,存储空间会逐渐耗尽,直至无法存储新的任务数据。
在一些实施例中,为解决存储空间不足的问题,会通过对存储空间进行扩容的方式以获取更多存储空间。但是在区块链系统中,通常部署着许多节点,为保持各节点存储数据的一致性,一旦对存储空间进行扩容处理,需要对区块链上的全部节点同时进行扩容,这极大的提高了运营成本。
本发明实施例从已存储的数据管理角度考虑,预先配置任务内存回收算法,当存储空间不足时,通过内存回收算法清理已过时效的数据,对内存进行动态管理,以缓解存储压力。
在本发明实施例中,区块链平台为EOS平台,区块链任务为交易双方通过EOS平台进行的交易任务,而产生的任务数据为交易双方执行交易任务时所产生的业务数据。
本发明实施例首先建立了区块链内存回收系统。如图1所示,区块链内存回收系统包括:若干节点终端101和EOS平台102,其中每台节点终端101上均设置有若干智能合约和业务应用。
EOS平台102上分布有若干节点终端101,每个节点终端101都可通过其部署的若干智能合约和业务应用在EOS平台102上执行交易任务。
具体的,每个节点终端101上均部署有多个相同的交易双方所共同认可的智能合约。当交易双方通过业务应用进行交易任务时,业务应用会调用节点上的智能合约,遵照智能合约所设定的交易规则进行交易任务,并将交易任务所产生的业务数据上链存储。
节点终端101上的业务应用用于执行用户的操作指令,用户可通过操作节点终端101上的业务应用完成交易任务,或是通过业务应用定义并上传交易双方认可的智能合约。其中,业务应用需要通过区块链接口应用调用节点终端101上储存的智能合约,并通过区块链接口应用实现业务处理和业务数据的上链存储。
智能合约由执行交易任务的双方共同确定,用于定义双方在EOS平台102执行交易的规则。只有当交易双方全部认可智能合约中所规定的条款时,才可将该条智能合约上链用于执行交易任务。双方用户在执行交易任务的过程中,会在符合智能合约所规定的情况下,默认执行对应智能合约所定制的交易规则。
执行交易任务所产生的业务数据通常存储在为EOS平台102为智能合约分配的内存空间之中。一般的,将为智能合约分配的内存空间确定为目标内存。
在目标内存中所存储的业务数据主要包括:区块摘要和交易数据。其中,区块摘要用于管理交易信息数据,包括区块编号、时间戳、出块节点、交易数量和操作数量等内容。交易数据则记录了交易的具体信息。
其中,在智能合约中所规定的交易规则被确定并完成上链之前,需要预先在每一条智能合约内部配置任务数据回收规则,用于内存用量过高时,或间隔一段预设时间间隔时对目标内存空间进行回收清理。具体的,根据EOS平台102现有资源函数列表提供一些预定的算法,将根据一些规则进行数据回收的程序代码设置在智能合约当中。智能合约只有在可以实现业务数据回收后,才能上链并被使用。
具体的,为智能合约所配置任务数据回收规则一般包括:对目标内存中符合预设数据条件的业务数据进行回收。
根据目标内存中业务数据被引用次数或被访问次数确定优先级,确定被引用次数或被访问次数少的业务数据的回收优先级高于被引用次数或被访问次数少的业务数据,并根据回收优先级执行对目标内存中业务数据的回收。
从所述业务数据中确定可利用业务数据,将可利用业务数据存储至所述目标内存的安全空间,并将业务数据中除所述可利用业务数据之外的业务数据进行回收。
可选的,可以根据实际情况配置其他任务数据回收规则对目标内存进行内存回收。
在智能合约中所规定的交易规则被确定并完成上链之前,还需要在用于业务应用调用智能合约的区块链接口应用中配置对应的调用条件,当目标内存的内存用量达到第一阈值时,执行对目标内存的数据回收;或是每当间隔预设的时间间隔时,执行对目标内存的数据回收。其中第一阈值以及时间间隔均可由用户根据自身实际需求自行设定。
结合图1所示的区块链内存回收系统,本发明实施例提供了一种区块链内存回收方法,如图2所示,该方法应用于节点终端,该方法的处理步骤包括:
201,在业务应用内根据智能合约执行区块链任务。
具体的,执行交易的双方用户通过业务应用在区块链上根据若干条上链的智能合约所规定的交易规则执行区块链任务,并通过区块链接口应用实现任务数据的上链。
其中,区块链为EOS平台,区块链任务为交易双方进行的交易任务,产生的任务数据为执行交易任务所产生的业务数据。
202,将执行区块链任务所产生的任务数据存储至为智能合约分配的目标内存中。
具体的,将EOS为智能合约所分配的内存空间确定为目标内存,并将双方用户执行区块链任务所产生的业务数据,储存至目标内存之中。
203,根据预设的任务数据回收规则对目标内存所储存的任务数据进行回收。
当目标内存中的内存用量大于第一阈值时,根据预设的任务数据回收规则对目标内存所存储的业务数据进行回收,并当目标内存的内存用量通过数据回收下降到第二阈值时,停止对所述目标内存执行业务数据的回收。
可选的,同样可以通过预设时间间隔,并按照预设的时间间隔对目标内存中的业务数据进行回收。
具体的,预设的任务数据回收规则包括:对目标内存中符合预设数据条件的业务数据执行回收;或是根据回收优先级由高到底的顺序执行对目标内存中业务数据的回收,其中需要根据所述目标内存中业务数据被引用的次数或者业务数据被访问的次数,确定回收优先级,引用次数少的业务数据的回收优先级高于引用次数多的业务数据,或者,被访问次数少的业务数据的回收优先级高于被访问次数多的业务数据。
可选的,任务数据回收规则还包括通过空闲空间对已使用内存空间进行整理。具体的,从所述业务数据中确定可利用业务数据,将所述可利用业务数据存储至所述目标内存的安全空间,并将业务数据中除所述可利用业务数据之外的业务数据全部进行回收。
在对目标内存进行回收的实际过程当中,可根据业务数据的类型同时选择多种业务数据回收规则进行组合,以更有效的对目标内存中的业务数据进行回收。或是根据自身实际需求,配置更加符合实际情况的业务数据回收规则对目标内存进行回收。
本发明实施例从已存储的数据管理角度出发,配置任务数据回收算法,当目标内存空间不足时,通过任务数据回收规则清理已过时效的数据,对内存进行动态管理,以缓解存储压力,难度低、易实现,可通过添加相关程序代码实现,无需额外的硬件成本。
对应上述区块链内存回收方法,本发明实施例还提供了一种区块链内存回收装置。参见图3,所述区块链内存回收装置可以包括:执行模块301、存储模块302和回收模块303。
执行模块301,在业务应用内根据智能合约执行区块链任务;
存储模块302,将执行所述区块链任务所产生的任务数据存储至为所述智能合约分配的目标内存中;
回收模块303,根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收。
图3所示实施例提供的区块链内存回收装置可用于执行本说明书所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
图4为本说明书电子设备一个实施例的结构示意图,如图4所示,上述电子设备可以包括至少一个处理器;以及与上述处理单元通信连接的至少一个存储器,其中:存储器存储有可被处理单元执行的程序指令,上述处理器调用上述程序指令能够执行本实施例提供的区块链内存回收方法。
其中,上述电子设备可以为能够与用户进行智能对话的设备,例如:云服务器,本说明书实施例对上述电子设备的具体形式不作限定。可以理解的是,这里的电子设备即为方法实施例中提到的机器。
图4示出了适于用来实现本说明书实施方式的示例性电子设备的框图。图4显示的电子设备仅仅是一个示例,不应对本说明书实施例的功能和使用范围带来任何限制。
如图4所示,电子设备以通用计算设备的形式表现。电子设备的组件可以包括但不限于:一个或者多个处理器410、通信接口420、存储器430,连接不同系统组件(包括存储器430、通信接口420和处理器410)的通信总线440。
通信总线440表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
电子设备典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器430可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)和/或高速缓存存储器。电子设备可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。存储器430可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本说明书各实施例的功能。
具有一组(至少一个)程序模块的程序/实用工具,可以存储在存储器430中,这样的程序模块包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块通常执行本说明书所描述的实施例中的功能和/或方法。
处理器410通过运行存储在存储器430中的程序,从而执行各种功能应用以及数据处理,例如实现本说明书所示实施例提供的区块链内存回收方法。
本说明书实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行本说明书所示实施例提供的区块链内存回收方法。
上述非暂态计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(Read Only Memory;以下简称:ROM)、可擦式可编程只读存储器(Erasable ProgrammableRead Only Memory;以下简称:EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本说明书操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network;以下简称:LAN)或广域网(Wide Area Network;以下简称:WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本说明书的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本说明书的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本说明书的实施例所属技术领域的技术人员所理解。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
需要说明的是,本说明书实施例中所涉及的终端可以包括但不限于个人计算机(Personal Computer;以下简称:PC)、个人数字助理(Personal Digital Assistant;以下简称:PDA)、无线手持设备、平板电脑(Tablet Computer)、手机、MP3播放器、MP4播放器等。
在本说明书所提供的实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本说明书各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本说明书各个实施例所述方法的部分步骤。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
Claims (10)
1.一种区块链内存回收方法,其特征在于,所述方法应用于节点终端,所述方法包括:
在业务应用内根据智能合约执行区块链任务;
将执行所述区块链任务所产生的任务数据存储至为所述智能合约分配的目标内存中;
根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收。
2.根据权利要求1所述的方法,其特征在于,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,包括:
按照预设的时间间隔执行对所述目标内存中所述任务数据的进行回收。
3.根据权利要求1所述的方法,其特征在于,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,还包括:
确定所述目标内存中的内存用量是否大于第一阈值;
如果所述目标内存中的内存用量大于第一阈值,则执行对所述目标内存的数据回收。
4.根据权利要求3所述的方法,其特征在于,所述如果所述目标内存中的内存用量大于第一阈值,则执行对所述目标内存的数据回收,包括:
在执行对所述目标内存的数据回收时,确定所述目标内存的内存用量是否下降到第二阈值;
当所述目标内存的内存用量通过数据回收下降到第二阈值时,停止对所述目标内存执行任务数据的回收。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,包括:
对所述目标内存中符合预设数据条件的任务数据进行回收。
6.根据权利要求1至4任一项所述的方法,其特征在于,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,包括:
根据所述目标内存中任务数据被引用的次数或者任务数据被访问的次数,确定回收优先级;
按照所述回收优先级由高到低的顺序,执行对所述目标内存中任务数据的回收;
其中,引用次数少的任务数据的回收优先级高于引用次数多的任务数据,或者,被访问次数少的任务数据的回收优先级高于被访问次数多的任务数据。
7.根据权利要求1所述的方法,其特征在于,所述根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收,还包括:
从所述任务数据中确定可利用任务数据,将所述可利用任务数据存储至所述目标内存的安全空间;
对所述任务数据中除所述可利用任务数据之外的任务数据进行回收。
8.一种区块链内存回收装置,其特征在于,包括:
执行模块,在业务应用内根据智能合约执行区块链任务;
存储模块,将执行所述区块链任务所产生的任务数据存储至为所述智能合约分配的目标内存中;
回收模块,根据预设的任务数据回收规则对所述目标内存所储存的任务数据进行回收。
9.一种区块链内存回收设备,其特征在于,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211551185.6A CN116909724A (zh) | 2022-12-05 | 2022-12-05 | 区块链内存回收方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211551185.6A CN116909724A (zh) | 2022-12-05 | 2022-12-05 | 区块链内存回收方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116909724A true CN116909724A (zh) | 2023-10-20 |
Family
ID=88358891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211551185.6A Pending CN116909724A (zh) | 2022-12-05 | 2022-12-05 | 区块链内存回收方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116909724A (zh) |
-
2022
- 2022-12-05 CN CN202211551185.6A patent/CN116909724A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287146B (zh) | 应用下载的方法、设备和计算机存储介质 | |
CN109472540B (zh) | 业务处理方法和装置 | |
CN112380227A (zh) | 基于消息队列的数据同步方法、装置、设备及存储介质 | |
CN109522021B (zh) | 参数回调处理方法、装置、电子设备及存储介质 | |
CN113254445A (zh) | 实时数据存储方法、装置、计算机设备及存储介质 | |
CN112631924A (zh) | 自动化测试方法、装置、计算机设备及存储介质 | |
CN112860662A (zh) | 数据血缘关系建立方法、装置、计算机设备及存储介质 | |
CN115455058A (zh) | 缓存数据的处理方法、装置、计算机设备及存储介质 | |
CN109561134B (zh) | 电子装置、分布式集群服务分配方法及存储介质 | |
CN113282850B (zh) | 资源标签管理方法、装置、电子设备、系统及存储介质 | |
CN108205559B (zh) | 一种数据管理方法及其设备 | |
CN110782310B (zh) | 从第三方平台异步获取用户属性信息的方法、装置和系统 | |
CN110908644B (zh) | 状态节点的配置方法、装置、计算机设备和存储介质 | |
CN116739524A (zh) | 业务流程设置方法、装置、设备、存储介质及程序产品 | |
CN108428182B (zh) | 开发平台装置、获取保单号的方法及计算机可读存储介质 | |
CN116909724A (zh) | 区块链内存回收方法和装置 | |
CN106844036B (zh) | 物理设备的访问方法及装置 | |
CN114217790A (zh) | 接口编排调度方法、装置、电子设备及介质 | |
CN115729765A (zh) | 一种数据采集方法、装置、电子设备及存储介质 | |
CN114374657A (zh) | 一种数据处理方法和装置 | |
CN113204426A (zh) | 资源池的任务处理方法及相关设备 | |
US8495033B2 (en) | Data processing | |
CN110688180B (zh) | 前端系统、前端数据流控制方法、电子设备及存储介质 | |
CN115794353B (zh) | 云网业务服务质量优化处理方法、装置、设备及存储介质 | |
CN111885152B (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 |