交易处理方法、装置、介质及电子设备制造方法及图纸

技术编号:36062886 阅读:18 留言:0更新日期:2022-12-24 10:28
本申请属于区块链技术领域,具体涉及一种交易处理方法、交易处理装置、计算机可读介质以及电子设备。该交易处理方法,包括:根据区块链网络中记录的交易数据对各个区块链节点进行可用性检测,以确定各个所述区块链节点为正常节点或者异常节点;当所述异常节点上产生交易请求时,将所述交易请求传输至所述正常节点,以通过所述异常节点和所述正常节点共同处理所述交易请求。本申请实施例可以提高交易业务的连续性和稳定可靠性。务的连续性和稳定可靠性。务的连续性和稳定可靠性。

【技术实现步骤摘要】
交易处理方法、装置、介质及电子设备


[0001]本申请属于区块链
,具体涉及一种交易处理方法、交易处理装置、计算机可读介质以及电子设备。

技术介绍

[0002]在体量庞大的线上及线下交易业务中,不可避免地会出现因设备故障或者其他原因而导致交易异常或者交易失败的问题。如何能够快速且准确的消除故障是确保交易业务的业务连续性和稳定可靠性的关键所在。

技术实现思路

[0003]本申请的目的在于提供一种交易处理方法、交易处理装置、计算机可读介质以及电子设备,至少在一定程度上克服相关技术中存在的故障处理效率低、业务连续性差、稳定可靠性差等技术问题。
[0004]本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
[0005]根据本申请实施例的一个方面,提供一种交易处理方法,该方法包括:根据区块链网络中记录的交易数据对各个区块链节点进行可用性检测,以确定各个所述区块链节点为正常节点或者异常节点;当所述异常节点上产生交易请求时,将所述交易请求传输至所述正常节点,以通过所述异常节点和所述正常节点共同处理所述交易请求。
[0006]根据本申请实施例的一个方面,提供一种交易处理装置,该装置包括:检测模块,被配置为根据区块链网络中记录的交易数据对各个区块链节点进行可用性检测,以确定各个所述区块链节点为正常节点或者异常节点;处理模块,被配置为当所述异常节点上产生交易请求时,将所述交易请求传输至所述正常节点,以通过所述异常节点和所述正常节点共同处理所述交易请求。r/>[0007]在本申请的一些实施例中,基于以上技术方案,所述检测模块包括:缓存模块,被配置为将区块链网络上产生的交易数据保存至交易缓存池;打包模块,被配置为当满足预设的区块上链条件时,对所述交易缓存池中保存的交易数据进行打包处理,以生成待上链的当前区块;当前区块检测模块,被配置为根据所述当前区块中记录的交易数据对各个区块链节点进行可用性检测。
[0008]在本申请的一些实施例中,基于以上技术方案,所述当前区块检测模块包括:统计模块,被配置为根据所述当前区块中记录的交易数据统计各个区块链节点的交易失败次数和交易失败率;异常确定模块,被配置为若所述区块链节点的交易失败次数和交易失败率均达到对应的参数阈值,则确定所述区块链节点为存在可用性故障的异常节点;正常确定模块,被配置为若所述区块链节点的交易失败次数和交易失败率中的任意一项未达到对应的参数阈值,则确定所述区块链节点为具有可用性的正常节点。
[0009]在本申请的一些实施例中,基于以上技术方案,所述统计模块包括:失败次数统计
模块,被配置为根据所述当前区块中记录的交易数据统计各个区块链节点的交易失败次数;失败率统计模块,被配置为若所述交易失败次数达到预设的次数阈值,则统计所述区块链节点的交易失败率。
[0010]在本申请的一些实施例中,基于以上技术方案,所述统计模块还被配置为:对所述当前区块中记录的交易数据进行完整性校验,以确定所述交易数据是否具有完整的交易流程;若所述交易数据的交易流程不完整,则确定所述交易数据为交易失败的数据;获取所述交易数据中记录的处理所述交易数据的区块链节点的节点标识;按照所述节点标识对所述交易失败的数据进行统计,得到各个区块链节点的交易失败次数。
[0011]在本申请的一些实施例中,基于以上技术方案,所述统计模块还被配置为:按照交易流程对所述当前区块中记录的交易数据进行数据筛选,得到发起交易时生成的交易起点数据;获取用于表示所述交易起点数据所在交易流程的流程标识;根据所述流程标识,将所述交易起点数据与所述当前区块中记录的其他交易数据进行匹配检测,以确定所述当前区块中是否存在与所述交易起点数据具有相同流程标识的交易终点数据,所述交易终点数据是在结束交易时生成的数据;若所述当前区块中存在与所述交易起点数据具有相同流程标识的交易终点数据,则确定所述交易数据具有完整的交易流程;若所述当前区块中不存在与所述交易起点数据具有相同流程标识的交易终点数据,则确定所述交易数据的交易流程不完整。
[0012]在本申请的一些实施例中,基于以上技术方案,所述检测模块还包括:历史区块获取模块,被配置为获取最近链接至所述区块链上的一个或者多个历史区块;历史区块检测模块,被配置为根据所述历史区块中记录的交易数据对各个区块链节点进行可用性检测。
[0013]在本申请的一些实施例中,基于以上技术方案,所述处理模块包括:目标选取模块,被配置为从所述区块链网络的正常节点中选取当前处于空闲状态的目标节点;通道建立模块,被配置为在所述异常节点与所述目标节点之间建立用于进行数据通信的数据通道;请求传输模块,被配置为基于所述数据通道,将所述交易请求从所述异常节点传输至所述目标节点。
[0014]在本申请的一些实施例中,基于以上技术方案,所述目标选取模块包括:矿工节点选取模块,被配置为从所述区块链网络中选取空闲度最高的区块链节点,作为用于打包当前区块的矿工节点;目标节点选取模块,被配置为通过所述矿工节点从所述区块链网络的正常节点中选取当前处于空闲状态的目标节点。
[0015]在本申请的一些实施例中,基于以上技术方案,所述矿工节点选取模块被配置为:按照预设时间周期统计所述区块链网络中各个区块链节点的交易数量;根据最近上链的预设数量的区块中记录的交易数据对所述各个区块链节点的交易数量进行筛选,得到各个区块链节点的近期交易数量;将所述近期交易数量最小的区块链节点选作空闲度最高的区块链节点。
[0016]在本申请的一些实施例中,基于以上技术方案,所述处理模块还包括:行为数据流传输模块,被配置为通过所述异常节点获取与所述交易请求相关联的行为数据流,并将所述行为数据流传输至所述正常节点,所述行为数据流包括通过所述异常节点的交互界面采集到的交互行为数据;结果数据流传输模块,被配置为通过所述正常节点上的后台处理线程对所述行为数据流进行处理,以得到作为所述行为数据流的响应数据的结果数据流,并
将所述结果数据流传输至所述异常节点;结果数据流展示模块,被配置为在所述异常节点的交互界面上展示所述结果数据流。
[0017]在本申请的一些实施例中,基于以上技术方案,所述交易处理装置还包括:前台处理模块,被配置为若所述正常节点上产生新的交易请求,则通过所述正常节点上的前台处理线程对所述新的交易请求进行处理,以得到所述新的交易请求的交易处理结果,所述前台处理线程是与所述后台处理线程并发运行的线程;前台展示模块,被配置为在所述正常节点的交互界面上展示所述新的交易请求的交易处理结果。
[0018]根据本申请实施例的一个方面,提供一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如以上技术方案中的交易处理方法。
[0019]根据本申请实施例的一个方面,提供一种电子设备,该电子设备包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器被配置为经由执行所述可执行指令来执行如以上技术方案中的交易处理本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种交易处理方法,其特征在于,包括:根据区块链网络中记录的交易数据对各个区块链节点进行可用性检测,以确定各个所述区块链节点为正常节点或者异常节点;当所述异常节点上产生交易请求时,将所述交易请求传输至所述正常节点,以通过所述异常节点和所述正常节点共同处理所述交易请求。2.根据权利要求1所述的交易处理方法,其特征在于,根据区块链网络中记录的交易数据对各个区块链节点进行可用性检测,包括:将区块链网络上产生的交易数据保存至交易缓存池;当满足预设的区块上链条件时,对所述交易缓存池中保存的交易数据进行打包处理,以生成待上链的当前区块;根据所述当前区块中记录的交易数据对各个区块链节点进行可用性检测。3.根据权利要求2所述的交易处理方法,其特征在于,根据所述当前区块中记录的交易数据对各个区块链节点进行可用性检测,包括:根据所述当前区块中记录的交易数据统计各个区块链节点的交易失败次数和交易失败率;若所述区块链节点的交易失败次数和交易失败率均达到对应的参数阈值,则确定所述区块链节点为存在可用性故障的异常节点;若所述区块链节点的交易失败次数和交易失败率中的任意一项未达到对应的参数阈值,则确定所述区块链节点为具有可用性的正常节点。4.根据权利要求3所述的交易处理方法,其特征在于,根据所述当前区块中记录的交易数据统计各个区块链节点的交易失败次数和交易失败率,包括:根据所述当前区块中记录的交易数据统计各个区块链节点的交易失败次数;若所述交易失败次数达到预设的次数阈值,则统计所述区块链节点的交易失败率。5.根据权利要求3所述的交易处理方法,其特征在于,根据所述当前区块中记录的交易数据统计各个区块链节点的交易失败次数,包括:对所述当前区块中记录的交易数据进行完整性校验,以确定所述交易数据是否具有完整的交易流程;若所述交易数据的交易流程不完整,则确定所述交易数据为交易失败的数据;获取所述交易数据中记录的处理所述交易数据的区块链节点的节点标识;按照所述节点标识对所述交易失败的数据进行统计,得到各个区块链节点的交易失败次数。6.根据权利要求5所述的交易处理方法,其特征在于,对所述当前区块中记录的交易数据进行完整性校验,包括:按照交易流程对所述当前区块中记录的交易数据进行数据筛选,得到发起交易时生成的交易起点数据;获取用于表示所述交易起点数据所在交易流程的流程标识;根据所述流程标识,将所述交易起点数据与所述当前区块中记录的其他交易数据进行匹配检测,以确定所述当前区块中是否存在与所述交易起点数据具有相同流程标识的交易终点数据,所述交易终点数据是在结束交易时生成的数据;
若所述当前区块中存在与所述交易起点数据具有相同流程标识的交易终点数据,则确定所述交易数据具有完整的交易流程;若所述当前区块中不存在与所述交易起点数据具有相同流程标识的交易终点数据,则确定所述交易数据的交易流程不完整。7.根据权利要求2所述的交易处理方法,其特征在于,根据区块链网络中记录的交易数据对各个区块链节点进行可用性...

【专利技术属性】
技术研发人员:张晓翼郭润增
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1