[发明专利]一种异常处理方法、设备和存储介质有效
申请号: | 201910222937.6 | 申请日: | 2019-03-22 |
公开(公告)号: | CN109995585B | 公开(公告)日: | 2021-12-31 |
发明(设计)人: | 魏吉星;王志文;吴思进 | 申请(专利权)人: | 杭州复杂美科技有限公司 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;G06Q40/04 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 310000 浙江省杭州市西湖*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 异常 处理 方法 设备 存储 介质 | ||
本发明提供一种异常处理方法、设备和存储介质,区块链系统中配置有第一数据访问接口,所述第一数据访问接口中封装有若干种错误类型,所述方法包括:接收交易执行失败的执行失败信息,所述执行失败信息包括执行第一交易失败的错误类型;其中,所述第一交易的执行依赖于外部服务数据;将所述执行失败信息发送至执行器框架以供所述执行器框架判断所述错误类型为网络类错误:是,则连接服务端节点重新获取所述外部服务数据。否,将所述执行失败信息记录到区块链上。本发明通过在区块链的执行框架中配置数据访问接口,通过执行器框架判断不同的错误类型进行不同的处理方法,及时因为获取不到外界访问数据而导致执行错误最终造成的分叉。
技术领域
本申请涉及计算机信息技术领域,具体涉及一种异常处理方法、设备和存储介质。
背景技术
随着区块链技术的发展,跨链、平行链技术的广泛应用,在进行区块链交易的执行过程中,会遇到访问外界数据的情况也可能是本地服务提供的数据或者网络中其他节点的数据,这些场景下,会出现某个节点连接所需服务的网络中断等情况,这是会将错误的执行结果错误记录在区块链上,与其他节点的执行结果不同,最终会造成分叉。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种避免产生分叉的异常处理方法、设备和存储介质。
第一方面,本发明提供一种异常处理方法,区块链系统中配置有第一数据访问接口,第一数据访问接口中封装有若干种错误类型,该方法包括:
接收交易执行失败的执行失败信息,执行失败信息包括执行第一交易失败的错误类型;其中,第一交易的执行依赖于外部服务数据;
将执行失败信息发送至执行器框架以供执行器框架判断错误类型是否为网络类错误:
是,则连接服务端节点重新获取外部服务数据。
否,将执行失败信息记录到区块链上。
进一步,连接服务端节点重新获取外部服务数据包括:
在预定的第一时间内发送连接服务端节点的第一请求信息;
判断在第一时间内第一请求信息是否得到响应:
是,则获取外部服务数据后重新执行第一交易;
否,则中止运行程序。
进一步,连接服务端节点包括:
延迟连接当前服务端节点或通过负载均衡服务器切换为运行中的服务端节点。
进一步,在中止运行程序的同时发出警告信息。
第二方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的异常处理方法。
第三方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的异常处理方法。
本发明的有益效果
本发明诸多实施例提供的异常处理方法、设备和存储介质通过在区块链的执行框架中配置数据访问接口,将执行交易中可能发生的错误类型进行封装,通过执行器框架判断不同的错误类型进行不同的处理方法,及时避免因某节点因为获取不到外界访问数据而导致执行错误最终造成的分叉。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例提供的一种异常处理方法的流程图。
图2为图1所示方法一优选实施例的流程图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州复杂美科技有限公司,未经杭州复杂美科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910222937.6/2.html,转载请声明来源钻瓜专利网。