一种业务处理方法、智能终端及存储介质与流程

文档序号:19948377发布日期:2020-02-18 09:53阅读:106来源:国知局
一种业务处理方法、智能终端及存储介质与流程

本发明涉及计算机技术领域,尤其涉及一种业务处理方法、智能终端及存储介质。



背景技术:

在区块链网络中,当需要触发智能合约执行业务请求时,需要定期检查区块链中是否存储相关的触发事件,一旦触发事件出现,则将该事件推送到待验证的队列中,区块链上的验证节点对该事件进行签名验证,以确保其有效性;待大多数验证节点对该事件达成共识后,智能合约将触发执行,并通知用户。

而如何更好地对用户发起的区块相关请求进行处理,成为研究的热点问题。



技术实现要素:

本申请实施例所要解决的技术问题在于,提供一种业务处理方法、智能终端及存储介质,能够根据计时信息自动触发智能合约执行相应的业务请求。

为了解决上述技术问题,本申请实施例提供了一种业务处理方法,包括:

在接收到业务请求时,调用并执行区块链上的智能合约;所述智能合约中设置有计时规则和所述业务请求所请求业务的业务函数;

获取计时信息,若计时信息满足所述计时规则,则调用所述业务函数处理所述业务请求,并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求;

若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中。

相应地,本申请实施例还提供一种业务处理装置,所述该业务处理装置包括:

调用模块,用于在接收到业务请求时,调用并执行区块链上的智能合约;所述智能合约中设置有计时规则和所述业务请求所请求业务的业务函数;

获取模块,用于获取计时信息;

处理模块,用于若计时信息满足所述计时规则,则调用所述业务函数处理所述业务请求,并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求;

存储模块,用于若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中。

相应地,本申请实施例还提供了一种智能终端,所述智能终端包括:存储装置和处理器,所述存储装置中存储有程序指令,所述处理器在调用所述存储指令时,用于实现上述所述的业务处理方法。

相应地,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序使得计算机执行上述所述的业务处理方法。

实施本申请实施例,具有如下有益效果:

通过在智能合约中设置计时规则和业务请求所对应的业务类型的业务函数,判断获取的计时信息是否满足计时规则,从而按时间自动触发执行业务请求,有针对性地对相关业务进行集中处理,可以较好地降低处理业务请求的工作量,减少了节点上软硬件资源的资源消耗,实现自动化、智能化地执行业务请求。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的业务处理方法应用于区块链网络的系统架构图;

图2是本申请实施例提供的一种业务处理方法的流程示意图;

图3是本申请实施例提供的调用所述业务函数处理所述获取到的待处理业务请求的流程示意图;

图4是本申请实施例提供的另一种业务处理方法的流程示意图;

图5是本申请实施例提供的另一种业务处理方法的流程示意图;

图6是本申请实施例提供的另一种业务处理方法的流程示意图;

图7是本申请实施例提供的另一种业务处理方法的流程示意图;

图8是本申请实施例提供的一种业务处理装置的结构示意图;

图9是本申请实施例提供的一种智能终端的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本申请的说明书和权利要求书中及上述附图中的属于“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链网络通常都会包括多个节点,节点基于共识机制会取得区块生成权成为区块生成节点。图1为本申请实施例提供的业务处理方法应用于区块链网络的系统架构图,该系统架构110可以包括分布式节点111、112、113、114、115和116,各分布式节点之间可以通过通信连接进行交互,该通信连接可以是基于各种通信网络的连接,比如可以通过有线通信链路或无线通信链路进行连接等,多个分布式节点共同组成了区块链网络。用户可以通过用户终端120或服务器130经由网络接入相应的节点。数据库140也可以经由网络接入相应的节点。

分布式节点中设置有智能合约,智能合约负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能。

应当理解,图1所述的分布式节点的数量仅仅是示意性的,根据实现需要,可以具有任意数目的分布式节点。

图2是本申请实施例提供的一种业务处理方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的终端或者存储介质产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行。具体如图2所示,所述方法包括如下步骤。

s201:在接收到业务请求时,调用并执行区块链上的智能合约;所述分布式节点可以接收用户终端或服务器发送的业务请求,调用并执行区块链上该分布式节点内的智能合约。其中,区块链可以为由图1中的分布式节点111、112、113、114、115和116组成的区块链网络。接收业务请求的分布式节点可以是区块链网络中基于共识机制取得区块生成权的出块节点。所述用户终端可以为平板电脑、智能手机、个人电脑(pc)、笔记本电脑、掌上电脑以及移动互联网设备(mid)等具备运行业务的终端设备。所述业务请求是针对待运行业务的具体请求信息,例如:存储请求、调用请求、交易请求等。

在一个实施例中,所述智能合约中设置有计时规则和所述业务请求所请求业务对应的业务函数,通过该业务函数能够对该业务请求所请求业务或者说该业务请求所请求业务对应的业务类型的所有业务进行处理,例如,该业务函数能够处理存储请求,存储相应的业务数据等等;所述计时规则用于约定智能合约进行业务处理所需满足的时间规则,例如设置了处理业务所需的时间间隔。

s202:获取计时信息;在一个实施例中,所述计时信息可以根据所述智能合约对应的定时器获取。所述定时器预置在所述智能合约中,或所述定时器为在区块链的出块节点中为所述智能合约预置的定时器。所述定时器预置在所述智能合约中,是指在初始化出块节点中的智能合约时通过调用系统功能在智能合约中注册定时器。在一个实施例中,所述计时信息也可以通过系统时间获取。

s203:若计时信息满足所述计时规则,则调用所述业务函数处理所述业务请求;并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求;

所述业务函数可以根据智能合约的约定存储在区块链网络中的任意分布式节点,并在智能合约中记录业务函数存储的节点地址;或者所述业务函数可以预置在智能合约中,方便调用。

所述数据库用于存储各种本节点接收到的业务请求,可以包括多种业务类型的请求,数据库中可以基于不同的业务类型将业务请求分开存储,不同的业务类型对应不同的计时规则,比如具有不同的处理时间间隔、不同的处理时间点,相互隔开的处理时间点等等。具体可以基于这些业务请求所对应的业务类型的业务特征设置计时规则,或者用户手动为这些业务类型制定技术规则。而业务特征可以是数据量大小、业务及时性需求等特征,从这些特征出发来设置不同业务类型的计时规则。所述从数据库中获取与所述业务请求所请求业务相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求,是根据待处理业务请求将对应的所述业务函数回调到智能合约或智能合约所在节点内,形成并执行内部交易,不影响其他节点、区块和区块链的状态,从而使世界状态(worldstate)保持稳定。这些待处理业务请求实际上是指在不满足计时规则之前接收到的业务请求,这些在之前接收到的业务请求由于不满足计时规则被缓存到了所述数据库中等待处理。

对于上述提及的对待处理业务请求的处理过程,可以参考图3所示的流程,图3是本申请实施例提供的调用所述业务函数处理所述获取到的待处理业务请求的流程示意图。如图3所示,所述调用所述业务函数处理所述获取到的待处理业务请求,包括s301:确定所述数据库中各个待处理业务请求的处理优先级。s302:根据所述处理优先级调用所述业务函数处理所述获取到的待处理业务请求;其中,所述处理优先级是根据待处理业务请求存储到所述数据库的时间确定的。在一个实施例中,可以按照存储时间先后顺序,设定存储到所述数据时间更早的待处理业务请求的优先级高于存储到所述数据时间更晚的待处理业务请求的优先级。在调用所述业务函数处理所述获取到的待处理业务请求时,按照处理优先级先调用存储到所述数据时间更早的待处理业务请求,再调用存储到所述数据时间更晚的待处理业务请求,避免了先发起的待处理业务请求的积压,保证了区块链上待处理业务请求能够被及时处理,从而提高了智能合约业务处理的效率。

在另一个实施例中,所述处理优先级是根据待处理业务请求所请求处理的业务数据的数据特征确定的。所述数据的数据特征可以是数据的数据量大小,或者业务数据的及时性需求特征等等。出块节点可以按照数据大小由小到大的顺序,设定数据大小更小的待处理业务请求的处理优先级高于数据大小更大的待处理业务请求。例如:存储视频的待处理业务请求长度为32个字节,存储图片的待处理业务请求长度为8个字节,存储文字的业务请求长度为2个字节,则存储文字的业务请求的处理优先级高于存储图片的待处理业务请求的处理优先级,存储图片的待处理业务请求的处理优先级高于存储视频的待处理业务请求的处理优先级。在调用所述业务函数处理所述获取到的待处理业务请求时,按照处理优先级先调用数据大小更小的待处理业务请求,再调用处理优先级高于数据大小更大的待处理业务请求,可以快速清理存储在数据库中待处理业务请求,减少数据库中待处理业务请求的积压量,保证了区块链上待处理业务请求能够被及时处理,从而提高了智能合约业务处理的效率。

s204:若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中。若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中,可以对待处理业务请求进行排队,形成或更新待处理业务请求队列。所述对待处理业务进行排队可以按照前述所述的处理优先级对待处理业务进行排队,待下次计时信息满足所述计时规则时,再调用数据库中的待处理业务请求,避免丢失接收到的业务请求,方便及时对待处理业务请求进行处理,从而提高了智能合约业务处理的效率。

在本申请实施例中,根据智能合约中设置的计时规则,判断获取的计时信息是否满足计时规则,从而按时间自动触发执行业务请求,有针对性地对相关业务进行集中处理,可以较好地降低处理业务请求的工作量,减少了节点上软硬件资源的资源消耗,实现自动化、智能化地执行业务请求。

图4是本申请实施例提供的另一种业务处理方法的流程示意图,具体如图4所示,所述方法可以由出块节点执行,可以包括以下步骤:

s401:在接收到业务请求时,调用并执行区块链上的智能合约;所述智能合约中设置有计时规则和所述业务请求所请求业务的业务函数;

s402:获取计时信息;

s403:根据所述业务请求所请求业务的业务类型,查找在所述定时任务列表中记录的计时规则;其中,在所述智能合约中设置有定时任务列表;所述定时任务列表记录了业务类型和计时规则之间的映射关系;

在一个实施例中,智能合约在设置定时任务列表时已经通过共识机制对业务类型和计时规则达成统一的共识,使得业务请求可以有计划性地按照计时规则的触发处理标准来有序处理,避免了每个触发事件出现都需根据共识机制遍历执行一个共识操作,降低了触发处理业务请求的工作量,减少了相关的资源消耗,从而实现自动化、智能化地执行业务请求。

s404:判断计时信息是否满足所述计时规则;

s405:若计时信息满足所述计时规则,则调用所述业务函数处理所述业务请求;并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求;

s406:若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中。

在本申请实施例中,在所述智能合约中设置有记录了业务类型和计时规则之间的映射关系的定时任务列表,使得业务请求可以有计划性地按照计时规则的触发处理标准来对相关业务进行集中处理,避免了每个触发事件出现都需根据共识机制达到共识,降低了处理业务请求的工作量,减少了相关的资源消耗,实现自动化、智能化地执行业务请求。

图5是本申请实施例提供的另一种业务处理方法的流程示意图,具体如图5所示,所述方法同样可以由出块节点执行,可以包括以下步骤:

s501:在接收到业务请求时,调用并执行区块链上的智能合约;所述智能合约中设置有计时规则和所述业务请求所请求业务的业务函数;

s502:根据所述智能合约对应的定时器获取计时信息;其中,所述定时器预置在所述智能合约中,或所述定时器为在区块链的出块节点中为所述智能合约预置的定时器;所述定时器预置在所述智能合约中,是指在出块节点中的智能合约初始化时通过调用系统功能在智能合约中注册定时器。所述定时器可以为正数计时的定时器,也可以为倒计时的定时器。所述正数计时的定时器为计时时间到达第一预设阈值后停止计时的定时器,或所述正数计时的定时器为计时时间到达第一预设阈值后继续连续计时的定时器。所述倒计时的定时器为从预设定时时间开始倒数计时,待倒数计时到零时停止计时的定时器。所述智能合约对应的定时器获取计时信息为处理业务请求提供了一个时间比对标准,便于后续按时间自动触发执行业务请求。

s503:根据所述业务请求所请求的业务类型,查找在所述定时任务列表中记录的计时规则;

s504:判断定时器的值是否满足所述计时规则中定义的第一处理条件;其中,所述计时规则中定义的第一处理条件为定时器的值大于或等于第一预设阈值,或所述计时规则中定义的第一处理条件为定时器的值为零;若满足第一处理条件,则确定计时信息满足所述计时规则,否则,确定计时信息不满足所述计时规则。

例如:若定时器为正数计时的定时器,第一预设阈值为10min,则当正数计时的定时器的值大于或等于10min时,则定时器的值满足所述计时规则中定义的第一处理条件;若定时器为倒计时的定时器,则当倒计时的定时器的值为零时,则定时器的值满足所述计时规则中定义的第一处理条件。

s505:若计时信息满足所述计时规则,则调用所述业务函数处理所述业务请求;并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求;

s506:若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中。

s507:检测所述数据库中的待处理业务请求是否被处理完毕;

s508:若检测所述数据库中的待处理业务请求被处理完毕,触发所述定时器重新计时,以便于获取到新的计时信息;

当前业务请求被处理完毕后,需更新计时信息,方便下次对待处理业务请求的处理时间进行跟踪,以降低了触发处理业务请求的工作量,实现自动化、智能化地执行业务请求。

所述智能合约中设置有计时规则和所述业务请求;所请求业务的业务函数并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求。

在本申请实施例中,通过在智能合约中设置计时规则和业务请求所对应的业务类型的业务函数,且通过智能合约对应的定时器获取计时信息为处理业务请求提供了一个时间比对标准判断获取的计时信息是否满足计时规则,从而按时间自动触发执行业务请求,有针对性地对相关业务进行集中处理,可以较好地降低处理业务请求的工作量,减少了节点上软硬件资源的资源消耗,实现自动化、智能化地执行业务请求。

图6是本申请实施例提供的另一种业务处理方法的流程示意图,具体如图6所示,所述方法同样可以由出块节点执行,可以包括以下步骤:

s601:在接收到业务请求时,调用并执行区块链上的智能合约;所述智能合约中设置有计时规则和所述业务请求所请求业务的业务函数。

s602:获取系统时间作为计时信息。所述系统时间为区块链或分布式节点的系统时间。

s603:根据所述业务请求所请求的业务类型,查找在所述定时任务列表中记录的计时规则;所述定时任务列表中记录的计时规则包括:标准时间间隔和结束时间;标准时间间隔为依次处理两个业务请求之间最小时间间隔,例如:前次业务请求在12:30处理完毕,标准时间间隔为20min,则下次业务请求需要在12:50之后(包括12:50)才能开始处理。标准时间间隔为当前业务请求执行完毕后释放资源和执行空间预留了时间。

s604:确定所述获取的计时信息与所述结束时间之间的当前时间间隔。

s605:判断所述当前时间间隔与所述标准时间间隔是否满足所述计时规则中定义的第二处理条件;所述计时规则中定义的第二处理条件为所述当前时间间隔与所述标准时间间隔之间的间隔时间差小于或等于第二预设阈值。

也就是说,当获取的时间信息与上一次结束时的时间间隔与标准时间间隔大致相等即可,差一点(第二预设阈值)到标准时间间隔或者超出了一定的时间间隔,也可以认为满足条件触发执行相关业务请求。

若满足第二处理条件,则确定计时信息满足所述计时规则,否则,确定计时信息不满足所述计时规则。

s606:若计时信息满足所述计时规则,则调用所述业务函数处理所述业务请求;并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求;

s607:若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中。

s608:检测所述数据库中的待处理业务请求是否被处理完毕。

s609:若检测所述数据库中的待处理业务请求被处理完毕,则根据处理完毕时的系统时间,更新所述定时任务列表中记录的计时规则中包括的结束时间;具体地,根据业务请求的实际处理情况,更新计时规则,从而自动更新下次业务请求的触发执行时间。

在本申请实施例中,通过在智能合约中设置计时规则和业务请求所对应的业务类型的业务函数,且通过智能合约对应的定时器获取计时信息为处理业务请求提供了一个时间比对标准判断获取的计时信息是否满足计时规则,从而按时间自动触发执行业务请求,有针对性地对相关业务进行集中处理,可以较好地降低处理业务请求的工作量,减少了节点上软硬件资源的资源消耗,实现自动化、智能化地执行业务请求。

再请参见图7,所述智能合约中设置有计时规则和所述业务请求所请求业务的业务函数,并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求。图7是本申请实施例提供的一种业务处理方法的流程示意图,具体如图7所示,所述方法同样可以由出块节点执行,可以包括以下步骤:

s701:显示用户界面,所述用户界面用于获取配置信息,所述配置信息包括:为相应业务类型设置的计时规则;调用系统函数根据所述设置的计时规则设置定时任务列表,并为不同的业务类型配置业务函数。

可以针对不同的业务类型设置相应的计时规则,例如:处理图片的业务请求的计时规则与处理文字的业务请求的计时规则不同,则分别对根据处理图片的业务请求和处理文字的业务请求的计时规则设置相应业务类型的定时任务列表;进一步,所述定时任务列表中可以记录单一业务类型和对应的计时规则,或所述定时任务中可以记录多种业务类型和对应的计时规则,以及业务类型和计时规则之间的映射关系。

s702:在接收到业务请求时,调用并执行区块链上的智能合约;所述分布式节点可以接收用户终端或服务器发送的业务请求,调用并执行区块链上该分布式节点内的智能合约。其中,区块链可以为由图1中的分布式节点111、112、113、114、115和116组成的区块链网络。接收业务请求的分布式节点可以是区块链网络中基于共识机制取得区块生成权的出块节点。所述用户终端可以为平板电脑、智能手机、个人电脑(pc)、笔记本电脑、掌上电脑以及移动互联网设备(mid)等具备运行业务的终端设备。所述业务请求是针对待运行业务的具体请求信息,例如:存储请求、调用请求、交易请求等。

所述智能合约中设置有计时规则和所述业务请求所请求业务的业务函数;所述计时规则用于约定智能合约进行业务处理所需满足的时间规则。

s703:获取计时信息;所述计时信息可以根据所述智能合约对应的定时器获取,或所述计时信息为区块链或分布式节点的系统时间。所述定时器预置在所述智能合约中,或所述定时器为在区块链的出块节点中为所述智能合约预置的定时器。所述定时器预置在所述智能合约中,是指在出块节点中的智能合约初始化时通过调用系统功能在智能合约中注册定时器。

s704:若计时信息满足所述计时规则,则调用所述业务函数处理所述业务请求;并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求;

s705:若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中。

在本申请实施例中,根据智能合约中设置的计时规则设置定时任务列表,判断获取的计时信息是否满足处理业务的条件,当满足时,则自动处理待处理业务请求,当不满足时,则将接收到的业务请求存储至数据库中待下次满足条件再处理,避免丢失业务请求,实现按时间自动触发执行业务请求,有针对性地对相关业务进行集中处理,可以较好地降低处理业务请求的工作量,减少了节点上软硬件资源的资源消耗,实现自动化、智能化地执行业务请求。

再请参见图8,是本发明实施例的一种业务处理装置的结构示意图,该业务处理装置可设置于智能终端中,该业务处理装置可以是运行于智能终端中的一个计算机程序(包括程序代码),也可以是包含在智能终端中的一个实体装置。该业务处理装置可以执行图2所示的方法。具体请参见图8,该业务处理装置包括如下模块。

调用模块801,用于在接收到业务请求时,调用并执行区块链上的智能合约;所述智能合约中设置有计时规则和所述业务请求所请求业务的业务函数;

获取模块802,用于获取计时信息;

处理模块803,用于若计时信息满足所述计时规则,则调用所述业务函数处理所述业务请求,并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求;

存储模块804,用于若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中。

在一个实施例中,在所述智能合约中设置有定时任务列表;所述定时任务列表记录了业务类型和计时规则之间的映射关系;该业务处理装置80还可以包括:查找模块805,用于根据所述业务请求所请求业务的业务类型,查找在所述定时任务列表中记录的计时规则;

判断模块806,用于判断计时信息是否满足所述计时规则。

在一个实施例中,所述获取模块802,具体用于根据所述智能合约对应的定时器获取计时信息;其中,所述定时器预置在所述智能合约中,或所述定时器是指在区块链的出块节点中为所述智能合约预置的定时器;

所述判断模块806,具体用于判断定时器的值是否满足所述计时规则中定义的第一处理条件;若满足第一处理条件,则确定计时信息满足所述计时规则,否则,确定计时信息不满足所述计时规则;

其中,所述计时规则中定义的第一处理条件为定时器的值大于或等于第一预设阈值,或所述计时规则中定义的第一处理条件为定时器的值为零。

在一个实施例中,该业务处理装置80还可以包括:

第一检测模块,用于检测所述数据库中的待处理业务请求是否被处理完毕;并在判断为是时,触发所述定时器重新计时,以便于获取到新的计时信息。

在一个实施例中,所述获取模块802,具体用于获取系统时间作为计时信息;所述定时任务列表中记录的计时规则包括:标准时间间隔和结束时间;

所述判断模块806,具体用于确定所述获取的计时信息与所述结束时间之间的当前时间间隔;判断所述当前时间间隔与所述标准时间间隔是否满足所述计时规则中定义的第二处理条件;若满足第二处理条件,则确定计时信息满足所述计时规则,否则,确定计时信息不满足所述计时规则;

其中,所述计时规则中定义的第二处理条件为:所述当前时间间隔与所述标准时间间隔之间的间隔时间差小于或等于第二预设阈值。

在一个实施例中,该业务处理装置80,具体用于检测所述数据库中的待处理业务请求是否被处理完毕;并在判断是时,根据处理完毕时的系统时间,更新所述定时任务列表中记录的计时规则中包括的结束时间。

在一个实施例中,所述处理模块806,具体用于确定所述数据库中各个待处理业务请求的处理优先级;根据所述处理优先级调用所述业务函数处理所述获取到的待处理业务请求;其中,所述处理优先级是根据待处理业务请求存储到所述数据库的时间确定的,或者所述处理优先级是根据待处理业务请求所请求处理的业务数据的数据特征确定的。

在一个实施例中,该业务处理装置80还可以包括:

显示模块807,用于显示用户界面,所述用户界面用于获取配置信息,所述配置信息包括:为相应业务类型设置的计时规则;

配置模块808,用于调用系统函数根据所述设置的计时规则设置定时任务列表,并为不同的业务类型配置业务函数。

本发明实施例中所述装置所包括的各个模块的具体实现可参考前述实施例中相关内容的描述,在此不赘述。在本申请实施例中,可以自动处理待处理业务请求,当不满足时,则将接收到的业务请求存储至数据库中待下次满足条件再处理,避免丢失业务请求,实现按时间自动触发执行业务请求,有针对性地对相关业务进行集中处理,可以较好地降低处理业务请求的工作量,减少了节点上软硬件资源的资源消耗,实现自动化、智能化地执行业务请求。

再请参见图9,是本申请实施例提供的一种智能终端的结构示意图,该智能终端可以是智能手机、平板电脑、个人电脑pc等终端,所述智能终端包括:存储装置902和处理器901;并且,所述智能终端还可以包括数据接口903、用户接口904。各个硬件之间还可以通过各种类型的总线建立连接。

通过所述数据接口903,智能终端可以和其他终端、服务器等设备之间交互数据,所述用户接口904则可以提供触摸显示屏、物理按键等实现用户与智能终端之间的人机交互。

所述存储装置902可以包括易失性存储器(volatilememory),例如随机存取存储器(random-accessmemory,ram);存储装置902也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flashmemory),固态硬盘(solid-statedrive,ssd)等;存储装置902还可以包括上述种类的存储器的组合。

所述处理器901可以是中央处理器(centralprocessingunit,cpu)。所述处理器901还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specificintegratedcircuit,asic),可编程逻辑器件(programmablelogicdevice,pld)等。上述pld可以是现场可编程逻辑门阵列(field-programmablegatearray,fpga),通用阵列逻辑(genericarraylogic,gal)等。

可选地,所述存储装置902存储程序指令。所述处理器901可以调用所述程序指令,实现如本申请前述实施例所示的方法中相关步骤。

在一个实施例中,所述处理器901,调用所述程序指令,用于在接收到业务请求时,调用并执行区块链上的智能合约;所述智能合约中设置有计时规则和所述业务请求所请求业务的业务函数;获取计时信息,若计时信息满足所述计时规则,则调用所述业务函数处理所述业务请求,并从数据库中获取与所述业务请求所请求业务的业务类型相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求;若计时信息不满足所述计时规则,则将所述业务请求存储到所述数据库中。

在一个实施例中,所述处理器901,还用于根据所述业务请求所请求业务的业务类型,查找在所述定时任务列表中记录的计时规则;判断计时信息是否满足所述计时规则;在所述智能合约中设置有定时任务列表;所述定时任务列表记录了业务类型和计时规则之间的映射关系。

在一个实施例中,所述处理器901,具体用于根据所述智能合约对应的定时器获取计时信息;其中,所述定时器预置在所述智能合约中,或所述定时器是指在区块链的出块节点中为所述智能合约预置的定时器;判断定时器的值是否满足所述计时规则中定义的第一处理条件;其中,所述计时规则中定义的第一处理条件为定时器的值大于或等于第一预设阈值,或所述计时规则中定义的第一处理条件为定时器的值为零;若满足第一处理条件,则确定计时信息满足所述计时规则,否则,确定计时信息不满足所述计时规则。

在一个实施例中,所述处理器901,还用于在所述从数据库中获取与所述业务请求所请求业务相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求之后,检测所述数据库中的待处理业务请求是否被处理完毕;若是,触发所述定时器重新计时,以便于获取到新的计时信息。

在一个实施例中,所述处理器901,具体用于获取系统时间作为计时信息;

所述定时任务列表中记录的计时规则包括:标准时间间隔和结束时间;

所述处理器901,具体用于确定所述获取的计时信息与所述结束时间之间的当前时间间隔;判断所述当前时间间隔与所述标准时间间隔是否满足所述计时规则中定义的第二处理条件;其中,所述计时规则中定义的第二处理条件为:所述当前时间间隔与所述标准时间间隔之间的间隔时间差小于或等于第二预设阈值;若满足第二处理条件,则确定计时信息满足所述计时规则,否则,确定计时信息不满足所述计时规则。

在一个实施例中,所述处理器901,还用于在所述从数据库中获取与所述业务请求所请求业务相关的待处理业务请求,调用所述业务函数处理所述获取到的待处理业务请求之后,检测所述数据库中的待处理业务请求是否被处理完毕;若是,则根据处理完毕时的系统时间,更新所述定时任务列表中记录的计时规则中包括的结束时间。

在一个实施例中,所述处理器901,具体用于确定所述数据库中各个待处理业务请求的处理优先级;根据所述处理优先级调用所述业务函数处理所述获取到的待处理业务请求;其中,所述处理优先级是根据待处理业务请求存储到所述数据库的时间确定的,或者所述处理优先级是根据待处理业务请求所请求处理的业务数据的数据特征确定的。

在一个实施例中,所述处理器901,还用于在所述在接收到业务请求时,调用并执行区块链上的智能合约之前,显示用户界面,所述用户界面用于获取配置信息,所述配置信息包括:为相应业务类型设置的计时规则;调用系统函数根据所述设置的计时规则设置定时任务列表,并为不同的业务类型配置业务函数。

本发明实施例中所述处理器901的具体实现可参考前述实施例中相关内容的描述,在此不赘述。在本申请实施例中,在本申请实施例中,可以自动处理待处理业务请求,当不满足时,则将接收到的业务请求存储至数据库中待下次满足条件再处理,避免丢失业务请求,实现按时间自动触发执行业务请求,有针对性地对相关业务进行集中处理,可以较好地降低处理业务请求的工作量,减少了节点上软硬件资源的资源消耗,实现自动化、智能化地执行业务请求。

相应地,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序使得计算机执行本申请图2至7中任意实施例所示的方法。可以理解的是,此处的计算机存储介质既可以包括智能终端中的内置存储介质,当然也可以包括智能终端所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了智能终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所揭露的仅为本发明的部分实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1