CN109710405A - 区块链智能合约管理方法、装置、电子设备及存储介质 - Google Patents
区块链智能合约管理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN109710405A CN109710405A CN201811567927.8A CN201811567927A CN109710405A CN 109710405 A CN109710405 A CN 109710405A CN 201811567927 A CN201811567927 A CN 201811567927A CN 109710405 A CN109710405 A CN 109710405A
- Authority
- CN
- China
- Prior art keywords
- block chain
- computing resource
- node
- resource configuration
- type
- 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
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开属于区块链与智能合约技术领域,涉及一种区块链智能合约管理方法、装置、电子设备及计算机可读存储介质。该方法包括:接收智能合约订立请求,并获取智能合约订立请求中的一种或者多种与智能合约相关联的业务类型;建立与每种业务类型相对应的计算资源配置条件;根据计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合;针对每种业务类型,由满足计算资源配置条件的节点集合中的区块链节点订立与业务类型相关联的智能合约并保存。本公开不仅可以衡量出区块链节点的计算能力,并且这种分类处理的方式有利于整合计算资源,提高区块链的业务处理速度和效率。
Description
技术领域
本公开涉及区块链与智能合约技术领域,尤其涉及一种区块链智能合约管理方法与区块链智能合约管理装置、电子设备及计算机可读存储介质。
背景技术
智能合约是一个事务处理模块和状态机构构成的系统,可以让一组复杂的、带有触发条件的数字化承诺按照事先设定的条件准确无误的执行。因此,区块链自2.0版本起,提供了智能合约技术来扩展和实现多种多样的业务系统处理逻辑和计算存储等功能。智能合约作为区块链的核心组成部分,可用于实现运行在区块链之上的业务逻辑。智能合约本质上是在区块链上运行的一段代码,由区块链交易触发。当一个预先编好的条件被触发时,智能合约执行相应的合同条款。
区块链单一节点的处理能力决定了智能合约不能过于复杂,对于大多数简单的业务处理过程,区块链节点上的智能合约都可以快速得到响应。但是,对于过于复杂的业务逻辑将导致智能合约运行时间变长,进而导致区块链响应时间变长,与中心化系统相比变得越来越没有优势。而且,随着账本数据的不断增加,也存在着智能合约对账本数据进行统计分析或大数据处理的需求,这对区块链节点的处理能力提出了较高的要求。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种区块链智能合约管理方法、区块链智能合约管理装置、电子设备及计算机可读存储介质,进而至少在一定程度上克服由于相关技术的限制而导致的响应时间长和数据处理需求大等问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种区块链智能合约管理方法,所述方法包括:接收智能合约订立请求,并获取所述智能合约订立请求中的一种或者多种与智能合约相关联的业务类型;建立与每种所述业务类型相对应的计算资源配置条件;根据所述计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合;针对每种所述业务类型,由满足所述计算资源配置条件的节点集合中的区块链节点订立与所述业务类型相关联的智能合约并保存。
在本公开的一种示例性实施例中,所述区块链智能合约管理方法还包括:接收智能合约调用请求,并获取所述智能合约调用请求中的至少一种目标业务类型;查找与所述目标业务类型相关联的目标智能合约,由保存所述目标智能合约的区块链节点执行所述目标智能合约,并将执行结果返回给所述智能合约调用请求的发送方。
在本公开的一种示例性实施例中,所述建立与各种所述业务类型相对应的计算资源配置条件,包括:预设一种或者多种计算资源配置参数;针对各种所述业务类型,选择对应的至少一种所述计算资源配置参数,并为选定的所述计算资源配置参数建立所述计算资源配置条件。
在本公开的一种示例性实施例中,所述计算资源配置参数包括数值型参数和/或非数值型参数。
在本公开的一种示例性实施例中,所述数值型参数包括中央处理器主频、内存容量、硬盘容量和/或网络带宽;所述非数值型参数包括中央处理器类型、内存类型和/或硬盘类型。
在本公开的一种示例性实施例中,所述根据所述计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合,包括:从所述区块链网络中获取预设数量的区块链节点的节点信息,所述节点信息包括所述区块链节点的计算资源配置信息;判断各个所述区块链节点的所述计算资源配置信息是否满足所述计算资源配置条件;将满足所述计算资源配置条件的区块链节点分类至优势计算节点集合;将不满足所述计算资源配置条件的区块链节点分类至劣势计算节点集合。
在本公开的一种示例性实施例中,所述根据所述计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合,还包括:获取所述优势计算节点集合中各个区块链节点的计算资源使用状态;判断所述各个区块链节点的所述计算资源使用状态是否满足预设使用条件;将满足所述预设使用条件的区块链节点记为优势计算节点,并将不满足所述预设使用条件的区块链节点记为劣势计算节点;将所述劣势计算节点移出所述优势计算节点集合,并在所述劣势计算节点的计算使用状态满足所述预设使用条件时,将所述劣势计算节点重新移入所述优势计算节点集合。
根据本公开的一个方面,提供一种区块链智能合约管理装置,所述装置包括:请求接收模块,被配置为接收智能合约订立请求,并获取所述智能合约订立请求中的一种或者多种与智能合约相关联的业务类型;条件建立模块,被配置为建立与每种所述业务类型相对应的计算资源配置条件;节点分类模块,被配置为根据所述计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合;合约订立模块,被配置为针对每种所述业务类型,由满足所述计算资源配置条件的节点集合中的区块链节点订立与所述业务类型相关联的智能合约并保存。
根据本公开的一个方面,提供一种电子设备,包括:处理器和存储器;其中,存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现上述任意示例性实施例的区块链智能合约管理方法。
根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意示例性实施例中的区块链智能合约管理方法。
本公开的示例性实施例具有以下有益效果:
在本公开的示例性实施例提供的方法及装置中,根据业务类型建立相应的计算资源配置条件,该条件可用于衡量区块链节点的计算能力。根据计算资源配置条件对区块链节点进行分类,得到至少两个与计算资源配置条件相关的区块链节点的节点集合,并由相应节点集合中选定的区块链节点进行智能合约管理。这种分类处理的方式有利于整合计算资源,提高区块链的业务处理速度和效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本公开示例性实施例中一种区块链智能合约管理方法的流程图;
图2示意性示出本公开实施例中一种区块链智能合约管理方法的部分步骤流程图;
图3示意性示出本公开实施例中一种区块链智能合约管理方法的部分步骤流程图;
图4示意性示出本公开实施例中一种区块链智能合约管理方法的部分步骤流程图;
图5示意性示出本公开实施例中一种区块链智能合约管理方法的部分步骤流程图;
图6示意性示出本公开示例性实施例中一种区块链智能合约管理装置的结构示意图;
图7示意性示出本公开示例性实施例中一种用于区块链智能合约管理方法的电子设备;
图8示意性示出本公开示例性实施例中一种用于区块链智能合约管理方法的计算机可读存储介质。
具体实施方式
现在将参考附图更全面地描述示例性实施方式。然而,示例性实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例性实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
需要说明的是,本公开中,用语“包括”、“配置有”、“设置于”用以表示开放式的包括在内的意思,并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等;用语“第一”、“第二”等仅作为标记使用,不是对其对象数量或次序的限制。
在本公开的示例性实施例中,首先提供了一种区块链智能合约管理方法,应用于具有一定存储空间、可连接网络和参与区块链的智能终端设备。具体而言,该可视化操作终端设备可以是手机、平板电脑、笔记本电脑、PDA、矿机等各种具有一定存储空间、可连接网络和参与区块链的电子终端设备。
参考图1中所示,该区块链智能合约管理方法主要可以包括以下步骤:
步骤S101.接收智能合约订立请求,并获取智能合约订立请求中的一种或者多种与智能合约相关联的业务类型。
当需要订立智能合约时,可以发送一智能合约订立请求,该请求中可以包含一种或者多种与智能合约相关联的业务类型。确定业务类型是通过获取到业务数据后,确定其业务,进而确定业务数据对应的业务类型。例如,将业务类型按照业务功能进行划分,可以分为记账类型、统计分析类型、逻辑计算类型、查询类型、支付类型等。其中,记账类型是业务生成并进行记账产生的业务数据对应的业务类型;统计分析类型是将复杂的业务数据进行统计并分析该业务数据对应的业务类型;逻辑计算类型是对复杂业务进行逻辑处理产生的业务数据对应的业务类型;查询类型是包含简单记账查询、逻辑计算结果或者统计分析查询业务数据对应的业务类型;支付类型是包含支付信息的业务数据对应的业务类型。又比如,在银行行业,可以将业务类型按照业务内容进行划分,可以分为发卡类型、交易类型等。其中,发卡类型是包含发卡信息的业务数据对应的业务类型;交易类型是包含交易信息的业务数据对应的业务类型。这里对于业务类型的划分原则不做具体限制。
在获取到业务数据之后,确定智能合约订立请求中的业务类型时,可能会出现业务类型交叉的情形。此时,确定业务类型可采用聚类或者其他方式确定一个覆盖范围较大的业务类型作为获取到的业务数据对应的业务类型。例如,获取到的业务数据对应的业务类型既有记账类型又有支付类型,根据业务内容来说,这些业务数据均属于交易类型,那么确定这些业务数据对应的业务类型为交易类型。
步骤S102.建立与每种业务类型相对应的计算资源配置条件。
通过步骤S101可以获取到与智能合约相关联的业务类型,本步骤可以对相关联的业务类型建立不同的相对应的计算资源配置条件。计算资源是指用于计算的资源,包括中央处理器性能资源、内存资源和硬盘资源等。计算资源配置条件是为满足各个业务类型的不同需求对计算资源的使用作出安排的条件,该条件是针对各业务类型定出的计算资源的不同标准。针对不同的业务类型建立不同的计算资源配置条件,就可以根据业务类型得出相关的计算资源配置条件,那么这些相关的计算资源配置条件即为该业务类型相对应的计算资源配置条件。
步骤S103.根据计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合。
针对步骤S102中已经建立好的计算资源配置条件,可以对区块链网络中的区块链节点进行分类,进而得到多个节点集合。其中,被分类的区块链节点可以是全部,也可以是部分;分类标准可以是一种计算资源的相关参数,也可以是多种;节点集合的个数也不做限定,可以根据实际需求进行划分。
步骤S104.针对每种所述业务类型,由满足计算资源配置条件的节点集合中的区块链节点订立与业务类型相关联的智能合约并保存。
根据步骤S103对全部或者部分区块链节点已经进行分类,可以分别结合各业务类型,由同一节点集合中的区块链节点订立并保存与该业务类型相关联的智能合约。两个或两个以上的区块链节点根据业务类型制定一份合约,明确各区块链节点的权利和义务,并通过编程语言将其电子化,制定合约的各区块链节点对其进行数字签名保证其有效性,则该智能合约订立成功,进行保存即可。
根据业务类型建立相应的计算资源配置条件,该条件可用于衡量区块链节点的计算能力。根据计算资源配置条件对区块链节点进行分类,得到至少两个与计算资源配置条件相关的区块链节点的节点集合,并由相应节点集合中选定的区块链节点进行智能合约管理。这种分类处理的方式有利于整合计算资源,提高区块链的业务处理速度和效率。
在本公开的另一示例性实施例中,如图2所示,区块链智能合约管理方法还包括以下步骤:
步骤S201.接收智能合约调用请求,并获取智能合约调用请求中的至少一种目标业务类型。
智能合约调用请求可以通过业务层触发脚本生成并发送,该业务层是一全球局域网类型的业务层。当接收到该智能合约调用请求,区块链对该智能合约调用请求进行解析。其中,智能合约调用请求中携带有所需调用的目标智能合约的名字、调用端口、业务类型和交易参数。在本实施例中只需获取到智能合约调用请求中的目标业务类型。该目标业务类型并不只限于一种,也可以是多种。
步骤S202.查找与目标业务类型相关联的目标智能合约,由保存目标智能合约的区块链节点执行目标智能合约,并将执行结果返回给智能合约调用请求的发送方。
根据步骤S201可以获取到智能合约调用请求中的目标业务类型,则区块链可以查找与目标业务类型相关联的目标智能合约。目标智能合约是已订立和保存的智能合约中的一种。目标智能合约成功调用,由保存目标智能合约的区块链节点执行目标智能合约,会根据智能合约调用请求进行业务处理,生成业务数据及执行结果,并将执行结果返回给智能合约调用请求的发送方。
本实施例通过获取智能合约调用请求中的业务类型执行目标智能合约,得到并返回执行结果,实现了在调用区块链中的智能合约时,无需知道智能合约的地址和接口描述信息,只需知道该智能合约的相关联的业务类型,即可成功调用智能合约,不仅简化了调用区块链中智能合约的调用流程,降低了智能合约的调用难度,而且避免了由于接口描述错误而导致的智能合约调用错误的情况发生。
在以上实施例的基础上,如图3所示,步骤S102中建立与各种所述业务类型相对应的计算资源配置条件,可以进一步包括以下步骤:
步骤S301.预设一种或者多种计算资源配置参数。
各业务类型相对应的计算资源配置条件可以是对一种或者多种计算资源配置参数的设定条件。其中,计算资源配置参数可以是中央处理器性能资源、内存资源和硬盘资源的相关参数。预设一种或者多种计算资源配置参数就是对中央处理器性能资源、内存资源和硬盘资源的相关参数进行预设。
步骤S302.针对各种业务类型,选择对应的至少一种计算资源配置参数,并为选定的计算资源配置参数建立计算资源配置条件。
在步骤S301中已经预设计算资源配置参数,进一步,还需建立计算资源配置条件。计算资源配置条件针对各业务类型制定计算资源的不同标准。具体的,计算资源配置条件是对计算资源配置参数进行选定和预设。因此,针对不同的业务类型建立不同的计算资源配置条件,亦即设定相对应的计算资源配置参数,根据不同的业务类型,可以选定不同的计算资源配置参数,那么这些相关的计算资源配置参数即为该业务类型相对应的计算资源配置条件。其中,不同业务类型对应的计算资源配置条件中选定的计算资源配置参数个数不等,应至少包含一种。
根据本实施例,针对不同的业务类型,建立对应的计算资源配置参数作为计算资源配置条件,不仅可以很好地将三者进行匹配,方便设定和查看,而且不同的计算资源配置条件预设不同的计算资源配置参数,避免了统一设定的不适用性,更具针对性和准确性。
在以上实施例的基础上,计算资源配置参数可以包括数值型参数和/或非数值型参数。其中,数值型参数包括中央处理器主频、内存容量、硬盘容量和/或网络带宽;非数值型参数包括中央处理器类型、内存类型和/或硬盘类型。
其中,中央处理器主频是中央处理器性能表现的一个方面,表示中央处理器的运算和处理数据的速度;内存容量是暂时存放机器运行时处理数据的数据量,大小取决于内存条可存储的数据量,所以并不是越大越好;硬盘容量是硬盘可永久存储的数据量,大小取决于其自身;网络带宽是在固定的时间内,能通过的最大位数据,是衡量网络使用情况的一个重要指标。可以看出,数值型参数均可用数据来表示其相关使用情况,所以可以进行数据运算来确定其是否符合计算资源配置条件。
其中,中央处理器主要有Intel和AMD两大类,不同的中央处理器类型对数据的处理能力不同;内存类型主要有SDRAM、DDR SDRAM和RDRAM三种,不同类型的内存传输类型不同;硬盘类型主要有IDE、SATA、SCSI和光纤通道四种,不同的硬盘接口在硬盘与计算机之间的连接速度不同,影响程序运行速度和系统性能。可以知道,非数值型参数是区块链节点自身确定的参数。
根据本实施例,对业务类型的计算资源配置条件中的计算资源配置参数进行设定和说明,使计算资源配置条件涉及到参数更加细化,方便设定和理解,也可使多种不同的业务类型更有针对性地选择计算资源配置参数,更加具有多样性,适配性更高,不容易出现错误对应的情形。
在本公开的一示例性实施例中,如图4所示,步骤S103根据计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合,可以进一步包括以下步骤:
步骤S401.从区块链网络中获取预设数量的区块链节点的节点信息,节点信息包括区块链节点的计算资源配置信息。
根据计算资源配置条件对区块链节点进行分类,可以是对目前为止的全部数量的区块链节点,也可以是部分数量的区块链节点分类。根据需求获取预设数量的区块链节点的节点信息,该节点信息包括区块链节点的计算资源配置信息。每个区块链节点的计算资源配置信息是该区块链节点对应的中央处理器性能资源、内存资源和硬盘资源的各数值型参数信息和非数值型参数信息。各区块链节点的计算资源配置信息中的非数值型参数信息应该是在区块链节点生成的时候已经设定好的,当终端设备发生变化时,可能才会发生变化;而数值型参数信息在该区块链节点生成时已经确定,不会变化。
步骤S402.判断各个区块链节点的计算资源配置信息是否满足计算资源配置条件。
根据步骤S401已经获取到需要进行分类的预设数量的区块链节点的计算资源配置信息,而这些区块链节点的计算资源配置信息是否符合区块链节点的节点集合,符合哪一节点集合需要用计算资源配置条件进行判断。根据业务类型已经建立相对应的计算资源配置条件,所以需要将区块链节点的计算资源配置信息分别与每一业务类型的计算资源配置条件进行比较,进而判断。
步骤S403.将满足计算资源配置条件的区块链节点分类至优势计算节点集合。
在步骤S402中可以将每个区块链节点的计算资源配置信息与业务类型对应的计算资源配置条件进行比较和判断,本步骤列出当判定一区块链节点的计算资源配置信息满足一计算资源配置条件时的情景。例如,一业务类型的计算资源配置条件是中央处理器类型为Intel,那么若区块链节点的中央处理器的类型不论是赛扬系列、奔腾系列、酷睿系列或者凌动系列,都可以根据该计算资源配置条件将这些区块链节点分类至优势计算节点集合。当然,一业务类型的计算资源配置条件中的计算资源配置参数并不仅仅只有这一种,还可以用其他的计算资源配置参数继续进行分类,直至分入一业务类型的节点集合。
步骤S404.将不满足计算资源配置条件的区块链节点分类至劣势计算节点集合。
在步骤S402中可以将每个区块链节点的计算资源配置信息与业务类型对应的计算资源配置条件进行对比和判断,本步骤列出当判定一区块链节点的计算资源配置信息不满足一计算资源配置条件时的情景。例如,一业务类型的计算资源配置条件是中央处理器类型为Intel,那么若区块链节点的中央处理器的类型是除赛扬系列、奔腾系列、酷睿系列或者凌动系列的其他系列,可以将该区块链节点分类至劣势计算节点集合。在这一业务类型的劣势计算节点集合中的区块链节点应继续针对其他业务类型的计算资源配置条件进行判断。
本实施例是运用计算资源配置条件对预设数量的区块链节点进行分类得到节点集合,使用计算资源配置条件中的多个计算资源配置参数进行分类,层层递进,更加细化,分类更加精准和正确,有利于对区块链智能合约的科学化管理。
在以上实施例的基础上,如图5所示,步骤S103根据计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合,还包括以下步骤:
步骤S501.获取优势计算节点集合中各个区块链节点的计算资源使用状态。
例如,当一业务类型的计算资源使用状态可能会随着区块链节点的运算状态不断变化,所以需要对这部分业务类型的计算资源使用状态进行更新。所以,在区块链节点的运算中,可以采用设定一确定的时间间隔,例如1s,这种方式来获取优势计算节点集合中各个区块链节点的计算资源使用状态。
步骤S502.判断各个区块链节点的计算资源使用状态是否满足预设使用条件。
当根据步骤S501获取到优势计算节点集合中各个区块链节点的计算资源使用状态时,应将其与预设使用条件进行对比,判断其在运行过程中是否满足预设使用条件。
步骤S503.将满足预设使用条件的区块链节点记为优势计算节点,并将不满足预设使用条件的区块链节点记为劣势计算节点。
在步骤S502中可以将各个区块链节点的计算资源使用状态与各个业务类型对应的预设使用条件进行对比和判断,本步骤将判断结果进行分类。当判定一区块链节点的计算资源使用状态满足一预设使用条件时,将该区块链节点记为优势计算节点;当判定一区块链节点的计算资源使用状态不满足一预设使用条件时,将该区块链节点记为劣势计算节点。
步骤S504.将劣势计算节点移出优势计算节点集合,并在劣势计算节点的计算使用状态满足预设使用条件时,将劣势计算节点重新移入优势计算节点集合。
步骤S503已经将各个区块链节点进行分类,但是在区块链计算过程中,可能各个区块链节点是否满足预设使用条件的状态会发生改变,这时候就需要根据变化情况进行调整和更新。当劣势计算节点不再满足预设使用条件,例如,针对某一业务类型,内存资源使用率的预设使用条件是限制该值不得超过70%,当内存资源使用率的计算资源使用状态达到80%时,就表明超出了预设使用条件,不再符合该业务类型,应将其移出优势计算节点集合;当该劣势计算节点的使用状态重新满足预设使用条件时,例如,在运行过程中,对内存资源使用率的计算资源使用状态低于70%时,可以将该劣势使用节点重新移入优势计算节点集合。
本实施例对在区块链的运算过程中,各个区块链节点的分类状态进行动态调整和更新,使区块链节点的分类和区块链智能合约的管理更加灵活,便于操作和管理。
需要说明的是,虽然以上示例性实施例的实施方式以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或者必须执行全部的步骤才能实现期望的结果。附加地或者备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
此外,在本公开的示例实施例中,还提供了一种区块链智能合约管理装置。参照图6所示,区块链智能合约管理装置600可以包括:请求接收模块601、条件建立模块602、节点分类模块603、合约订立模块604。其中:
请求接收模块601,被配置为接收智能合约订立请求,并获取智能合约订立请求中的一种或者多种与智能合约相关联的业务类型;条件建立模块602,被配置为建立与每种业务类型相对应的计算资源配置条件;节点分类模块603,被配置为根据计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合;合约订立模块604,被配置为针对每种业务类型,由满足计算资源配置条件的节点集合中的区块链节点订立与业务类型相关联的智能合约并保存。
上述区块链智能合约管理装置的具体细节已经在对应的区块链智能合约管理方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了区块链智能合约管理装置600的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
下面参照图7来描述根据本发明的这种实施例的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:上述至少一个处理单元710、上述至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730、显示单元740。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。
存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(ROM)7203。
存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备700也可以与一个或多个外部设备900(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备700交互的设备通信,和/或与使得该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器740通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。
参考图8所示,描述了根据本发明的实施例的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (10)
1.一种区块链智能合约管理方法,其特征在于,包括:
接收智能合约订立请求,并获取所述智能合约订立请求中的一种或者多种与智能合约相关联的业务类型;
建立与每种所述业务类型相对应的计算资源配置条件;
根据所述计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合;
针对每种所述业务类型,由满足所述计算资源配置条件的节点集合中的区块链节点订立与所述业务类型相关联的智能合约并保存。
2.根据权利要求1所述的区块链智能合约管理方法,其特征在于,所述方法还包括:
接收智能合约调用请求,并获取所述智能合约调用请求中的至少一种目标业务类型;
查找与所述目标业务类型相关联的目标智能合约,由保存所述目标智能合约的区块链节点执行所述目标智能合约,并将执行结果返回给所述智能合约调用请求的发送方。
3.根据权利要求1所述的区块链智能合约管理方法,其特征在于,所述建立与各种所述业务类型相对应的计算资源配置条件,包括:
预设一种或者多种计算资源配置参数;
针对各种所述业务类型,选择对应的至少一种所述计算资源配置参数,并为选定的所述计算资源配置参数建立所述计算资源配置条件。
4.根据权利要求3所述的区块链智能合约管理方法,其特征在于,所述计算资源配置参数包括数值型参数和/或非数值型参数。
5.根据权利要求4所述的区块链智能合约管理方法,其特征在于,
所述数值型参数包括中央处理器主频、内存容量、硬盘容量和/或网络带宽;
所述非数值型参数包括中央处理器类型、内存类型和/或硬盘类型。
6.根据权利要求1所述的区块链智能合约管理方法,其特征在于,所述根据所述计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合,包括:
从所述区块链网络中获取预设数量的区块链节点的节点信息,所述节点信息包括所述区块链节点的计算资源配置信息;
判断各个所述区块链节点的所述计算资源配置信息是否满足所述计算资源配置条件;
将满足所述计算资源配置条件的区块链节点分类至优势计算节点集合;
将不满足所述计算资源配置条件的区块链节点分类至劣势计算节点集合。
7.根据权利要求6所述的区块链智能合约管理方法,其特征在于,所述根据所述计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合,还包括:
获取所述优势计算节点集合中各个区块链节点的计算资源使用状态;
判断所述各个区块链节点的所述计算资源使用状态是否满足预设使用条件;
将满足所述预设使用条件的区块链节点记为优势计算节点,并将不满足所述预设使用条件的区块链节点记为劣势计算节点;
将所述劣势计算节点移出所述优势计算节点集合,并在所述劣势计算节点的计算使用状态满足所述预设使用条件时,将所述劣势计算节点重新移入所述优势计算节点集合。
8.一种区块链智能合约管理装置,其特征在于,包括:
请求接收模块,被配置为接收智能合约订立请求,并获取所述智能合约订立请求中的一种或者多种与智能合约相关联的业务类型;
条件建立模块,被配置为建立与每种所述业务类型相对应的计算资源配置条件;
节点分类模块,被配置为根据所述计算资源配置条件对区块链网络中的区块链节点分类得到多个节点集合;
合约订立模块,被配置为针对每种所述业务类型,由满足所述计算资源配置条件的节点集合中的区块链节点订立与所述业务类型相关联的智能合约并保存。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7中任意一项所述的区块链智能合约管理方法。
10.一种电子设备,其特征在于,包括:
处理器;
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器被配置为经由执行所述可执行指令来执行权利要求1-7中任意一项所述的区块链智能合约管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811567927.8A CN109710405B (zh) | 2018-12-21 | 2018-12-21 | 区块链智能合约管理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811567927.8A CN109710405B (zh) | 2018-12-21 | 2018-12-21 | 区块链智能合约管理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109710405A true CN109710405A (zh) | 2019-05-03 |
CN109710405B CN109710405B (zh) | 2023-04-14 |
Family
ID=66257145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811567927.8A Active CN109710405B (zh) | 2018-12-21 | 2018-12-21 | 区块链智能合约管理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710405B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110209671A (zh) * | 2019-05-17 | 2019-09-06 | 无锡朝阳供应链科技股份有限公司 | 一种分布式账本数据的存取系统及其应用 |
CN110262777A (zh) * | 2019-05-21 | 2019-09-20 | 阿里巴巴集团控股有限公司 | 一种区块链应用框架 |
CN110310103A (zh) * | 2019-05-30 | 2019-10-08 | 深圳市元征科技股份有限公司 | 一种资源筹集方法及区块链节点设备 |
CN110650102A (zh) * | 2019-09-23 | 2020-01-03 | 深圳市元征科技股份有限公司 | 一种资源匹配方法、装置、服务器及介质 |
CN110740057A (zh) * | 2019-09-16 | 2020-01-31 | 中国联合网络通信集团有限公司 | 一种业务部署方法以及区块链平台 |
CN111061713A (zh) * | 2019-12-11 | 2020-04-24 | 北京时代云链信息科技有限公司 | 区块链数据融合方法、装置、设备以及存储介质 |
CN111915304A (zh) * | 2019-05-08 | 2020-11-10 | 百度在线网络技术(北京)有限公司 | 数字元素的数据处理方法、装置、设备及存储介质 |
CN112702390A (zh) * | 2020-12-07 | 2021-04-23 | 北京大学 | 基于区块链的智能合约资源的组网方法和装置 |
CN113206881A (zh) * | 2020-12-15 | 2021-08-03 | 恬家(上海)信息科技有限公司 | 智能合约执行方法及区块链系统 |
CN113222757A (zh) * | 2021-05-06 | 2021-08-06 | 永旗(北京)科技有限公司 | 一种区块链智能合约管理方法及系统 |
CN113870039A (zh) * | 2021-09-27 | 2021-12-31 | 重庆易保全网络科技有限公司 | 一种基于区块链技术的企业合同管理系统 |
CN113988787A (zh) * | 2021-10-22 | 2022-01-28 | 中国电信股份有限公司 | 网络配置方法及装置、存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107832139A (zh) * | 2017-09-26 | 2018-03-23 | 上海点融信息科技有限责任公司 | 用于管理区块链节点的计算资源的方法、设备和系统 |
CN107943580A (zh) * | 2017-11-13 | 2018-04-20 | 上海点融信息科技有限责任公司 | 用于管理区块链节点处的用户智能合约的方法以及设备 |
CN108900435A (zh) * | 2018-06-20 | 2018-11-27 | 郑州云海信息技术有限公司 | 一种业务部署的方法、装置及计算机存储介质 |
-
2018
- 2018-12-21 CN CN201811567927.8A patent/CN109710405B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107832139A (zh) * | 2017-09-26 | 2018-03-23 | 上海点融信息科技有限责任公司 | 用于管理区块链节点的计算资源的方法、设备和系统 |
CN107943580A (zh) * | 2017-11-13 | 2018-04-20 | 上海点融信息科技有限责任公司 | 用于管理区块链节点处的用户智能合约的方法以及设备 |
CN108900435A (zh) * | 2018-06-20 | 2018-11-27 | 郑州云海信息技术有限公司 | 一种业务部署的方法、装置及计算机存储介质 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111915304A (zh) * | 2019-05-08 | 2020-11-10 | 百度在线网络技术(北京)有限公司 | 数字元素的数据处理方法、装置、设备及存储介质 |
CN111915304B (zh) * | 2019-05-08 | 2024-06-07 | 百度在线网络技术(北京)有限公司 | 数字元素的数据处理方法、装置、设备及存储介质 |
CN110209671A (zh) * | 2019-05-17 | 2019-09-06 | 无锡朝阳供应链科技股份有限公司 | 一种分布式账本数据的存取系统及其应用 |
CN110262777A (zh) * | 2019-05-21 | 2019-09-20 | 阿里巴巴集团控股有限公司 | 一种区块链应用框架 |
CN110262777B (zh) * | 2019-05-21 | 2023-12-01 | 创新先进技术有限公司 | 一种区块链应用框架 |
CN110310103A (zh) * | 2019-05-30 | 2019-10-08 | 深圳市元征科技股份有限公司 | 一种资源筹集方法及区块链节点设备 |
CN110740057B (zh) * | 2019-09-16 | 2022-03-18 | 中国联合网络通信集团有限公司 | 一种业务部署方法以及区块链平台 |
CN110740057A (zh) * | 2019-09-16 | 2020-01-31 | 中国联合网络通信集团有限公司 | 一种业务部署方法以及区块链平台 |
CN110650102A (zh) * | 2019-09-23 | 2020-01-03 | 深圳市元征科技股份有限公司 | 一种资源匹配方法、装置、服务器及介质 |
CN111061713A (zh) * | 2019-12-11 | 2020-04-24 | 北京时代云链信息科技有限公司 | 区块链数据融合方法、装置、设备以及存储介质 |
CN112702390A (zh) * | 2020-12-07 | 2021-04-23 | 北京大学 | 基于区块链的智能合约资源的组网方法和装置 |
CN113206881A (zh) * | 2020-12-15 | 2021-08-03 | 恬家(上海)信息科技有限公司 | 智能合约执行方法及区块链系统 |
CN113206881B (zh) * | 2020-12-15 | 2024-05-28 | 恬家(上海)信息科技有限公司 | 智能合约执行方法及区块链系统 |
CN113222757A (zh) * | 2021-05-06 | 2021-08-06 | 永旗(北京)科技有限公司 | 一种区块链智能合约管理方法及系统 |
CN113870039A (zh) * | 2021-09-27 | 2021-12-31 | 重庆易保全网络科技有限公司 | 一种基于区块链技术的企业合同管理系统 |
CN113988787A (zh) * | 2021-10-22 | 2022-01-28 | 中国电信股份有限公司 | 网络配置方法及装置、存储介质 |
CN113988787B (zh) * | 2021-10-22 | 2022-11-29 | 中国电信股份有限公司 | 网络配置方法及装置、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109710405B (zh) | 2023-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109710405A (zh) | 区块链智能合约管理方法、装置、电子设备及存储介质 | |
CN109803004A (zh) | 区块链智能合约管理方法与装置、电子设备、存储介质 | |
Deng et al. | Optimal application deployment in resource constrained distributed edges | |
CN104995870B (zh) | 多目标服务器布局确定方法和装置 | |
CN108038145A (zh) | 分布式服务跟踪方法、系统、存储介质和电子设备 | |
CN109360012A (zh) | 广告投放渠道的选择方法及装置、存储介质、电子设备 | |
AU2021264961B2 (en) | Multi objective optimization of applications | |
KR101732319B1 (ko) | 목표 지향적 빅데이터 비즈니스 분석 프레임워크 | |
CN110225104A (zh) | 数据获取方法、装置及终端设备 | |
CN114172820B (zh) | 跨域sfc动态部署方法、装置、计算机设备及存储介质 | |
CN108985694A (zh) | 用于确定配送中心地址的方法和装置 | |
CN109408205A (zh) | 基于hadoop集群的任务调度方法和装置 | |
US12106388B2 (en) | Paying for parking with electrical power from an electric vehicle | |
CN109787960A (zh) | 异常流量数据识别方法、装置、介质及电子设备 | |
CN109933405A (zh) | 虚拟机创建方法及装置、电子设备、存储介质 | |
CN109960650A (zh) | 基于大数据的应用程序评估方法、装置、介质及电子设备 | |
CN107889183A (zh) | 数据传输方法及装置 | |
CN109152061A (zh) | 通道调配方法、装置、服务器及存储介质 | |
CN109460003A (zh) | 车辆故障预测建模方法及系统 | |
CN109345166A (zh) | 用于生成信息的方法和装置 | |
CN114091610A (zh) | 智能决策方法及装置 | |
CN111769985A (zh) | 一种数据流量预测方法及装置 | |
CN109871982A (zh) | 一种配电网重构方法及云服务器、电子设备 | |
CN115766876A (zh) | 资源调度方法、装置、设备及存储介质 | |
WO2017180186A1 (en) | Task management system for a modular electronic device |
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 |