CN114253757A - 一种第三方系统接口对接的异常补偿方法 - Google Patents

一种第三方系统接口对接的异常补偿方法 Download PDF

Info

Publication number
CN114253757A
CN114253757A CN202111577867.XA CN202111577867A CN114253757A CN 114253757 A CN114253757 A CN 114253757A CN 202111577867 A CN202111577867 A CN 202111577867A CN 114253757 A CN114253757 A CN 114253757A
Authority
CN
China
Prior art keywords
interface
information
calling
log record
record
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
Application number
CN202111577867.XA
Other languages
English (en)
Inventor
刘冲
陈金
丁辉
李畅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
XCMG Hanyun Technologies Co Ltd
Original Assignee
XCMG Hanyun Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by XCMG Hanyun Technologies Co Ltd filed Critical XCMG Hanyun Technologies Co Ltd
Priority to CN202111577867.XA priority Critical patent/CN114253757A/zh
Publication of CN114253757A publication Critical patent/CN114253757A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种第三方系统接口对接的异常补偿方法,包括录入接口信息;将录入的接口信息插入到日志记录中;对接口信息进行解析执行具体的接口调用;对接口返回结果进行状态解析,并更新日志记录;查找失败日志记录进行异常补偿。本发明在调用接口之前进行插入日志信息操作,防止出现接口实际调用了,但过程出现异常,导致记录没有正常生成,信息无法追溯。采用本发明的接口对接异常补偿方法,能够准确获知接口调用的过程,方便查询和统计,可通过入参形式决定接口调用是同步还是异步执行,失败记录快速查询,接口重试完全根据日志记录自动录入传参信息,找到指定接口,避免数据恢复的复杂操作。

Description

一种第三方系统接口对接的异常补偿方法
技术领域
本发明涉及一种第三方系统接口对接的异常补偿方法,属于信息处理技术领域。
背景技术
随着互联网技术的迅猛发展,软件应用系统更加丰富,一般企业会应用多个功能不同的系统,不同系统间通常会存在业务交集,而不同系统进行接口对接出现偶发问题时,由于过程信息记录不完整,容易出现互相推诿现象,并且接口调用出现异常后想要重新尝试存在困难。传统做法仅仅关注接口调用本身,双方系统出现数据不一致情况时排查问题原因存在困难,并且修复数据存在困难。因此,如何完整记录接口调用过程,并且能够快捷的对异常的调用进行重试成为了当前亟待解决的技术问题。
发明内容
本发明的目的在于提供一种第三方系统接口对接的异常补偿方法,在调用接口之前进行插入日志信息操作,防止出现接口实际调用了,但过程出现异常,导致记录没有正常生成,信息无法追溯。
为达到上述目的,本发明采用的技术方案如下:
一种第三方系统接口对接的异常补偿方法,包括:
录入接口信息;
将录入的接口信息插入到日志记录中;
对接口信息进行解析执行具体的接口调用;
对接口返回结果进行状态解析,并更新日志记录;
查找失败日志记录进行异常补偿。
进一步的,所述录入接口信息包括:接口url和接口入参;
所述接口入参包括以下至少一项:
接口提供厂家、接口系统类型、接口编码、接口操作类型、接口调用方式、接口入参字符串;
其中,接口调用方式包括同步方式和异步方式。
进一步的,还包括,将录入的接口信息插入到日志记录中后,返回该日志记录的唯一编码。
进一步的,还包括,如果接口调用方式为异步方式,则将调用接口加入线程池执行。
进一步的,所述对接口信息进行解析执行具体的接口调用,包括:
根据入参中的接口操作类型识别需要调用的接口地址,执行接口调用。
进一步的,所述对接口信息进行解析执行具体的接口调用,包括:
预先定义与接口地址一一对应的接口编码并存储;
执行接口调用时查询该存储文件,找到与接口编码对应的接口地址进行调用。
进一步的,所述对接口返回结果进行状态解析并更新日志记录,包括:
预先对入参中的厂家,根据返回的数据格式编写截取代码;所述截取代码用于从返回的数据中截取执行接口调用的状态;
根据日志唯一编号,更新日志的接口调用的状态信息,异常信息以及接口返回的完整数据。
进一步的,所述查找失败日志记录进行异常补偿,包括:
对日志记录中接口调用状态为失败的记录,采用图形化界面展示出来,用户手动勾选进行重试。
进一步的,所述查找失败日志记录进行异常补偿,包括:
设定定时任务拉取日志记录中接口调用状态为失败的记录进行重试。
进一步的,还包括,
对重试次数进行记录,当重试次数达到预设限值时,该条记录不再重试。
本发明的有益效果为:
采用本发明的接口对接异常补偿方法,能够准确获知接口调用的过程,方便查询和统计,可通过入参形式决定接口调用是同步还是异步执行,失败记录快速查询,接口重试完全根据日志记录自动录入传参信息,找到指定接口,避免数据恢复的复杂操作。
附图说明
图1是本发明实施例提供的一种第三方系统接口对接的异常补偿方法的流程图。
具体实施方式
下面对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本发明提供一种第三方系统接口对接的异常补偿方法,包括:
一种第三方接口对接的异常补偿方法,包括如下步骤:
步骤1:录入接口信息,用于判断识别需调用的接口地址;其中,接口信息包括接口url,接口入参;
步骤2:调用接口前将录入的接口信息插入到日志记录中;
步骤3:对接口信息进行解析执行具体的接口调用;
步骤4:对接口返回结果进行状态解析,并更新日志记录;
步骤5:查找出失败日志记录通过手动或定时任务进行重试,实现异常补偿。
图1 是本发明的一个具体实施例提供的一种第三方系统接口对接的异常补偿方法流程图。该方法具体实现过程如下:
S10 :编写接口调用参数信息,
为能准确通过传入信息定位到需要调用的接口,入参内容需包含但并不仅限:
接口提供厂家,如金蝶、用友、SAP等。
系统类型,如ERP、WMS、QMS等。
编码和操作类型,用于具体定位接口。
同步或异步,调用第三方接口时,如果接口响应时间较长,可选择异步形式,避免操作过于卡顿影响用户体验)。异步方式:无需等待第三方系统返回结果,将调用过程执行完成;同步方式:需等待第三方系统返回结果。
接口入参字符串,用于调用接口时的入参,调用后的回溯或重试。
S20 :将上述接口调用参数信息插入日志表中,
插入日志信息操作放置在调用接口之前,防止出现接口实际调用了,但过程出现异常,导致记录没有正常生成,信息无法追溯。此时需要返回出该日志记录的唯一编码,用于接口执行完成后,更新该日志的状态信息。
需要说明的是,该编码仅做唯一标识使用,可任意生成方式,如通过雪花算法生成,uuid生成。
进一步的,该步骤还可以包括:
S21 :根据入参内容判断传参内容是否为异步,
如果第三方接口响应时间比较长,并且用户不需要等待接口返回结果或无法接受过长的时间进行响应,可选择异步方式。如果用户对响应时间可接受应优先考虑使用同步方式,这样能保证最终日志信息更新的一致性。
S22 :如果是异步方式,则将调用第三方接口的方法加入线程池执行,
线程池能够减少每次获取和结束资源的消耗,提高对资源的利用率。
线程池的具体参数可根据服务器资源情况,接口调用频率等条件综合考虑,切勿将线程池参数一次配置过高,影响其他业务功能的使用。
S30 :根据入参内容判断需要调用哪个厂家接口,并执行具体的接口调用,
由于每个厂家提供接口的协议,入参情况均不相同,需要分别编写调用方法。
本实施例中根据入参中的接口类型或编码执行具体的接口调用,接口调用会有具体的接口地址,厂家提供接口的形式也大致分为两类:
A、根据操作类型判定接口地址
所有业务功能的保存是使用同一个接口,同理查询,删除等其他类型的操作接口地址都相同,只是传参不同。
B、无规则接口地址
此种类型最为常见,定制化接口,每个业务功能对接提供的接口地址均不相同。此时就需要定义接口编码与接口地址一一对应,对应信息可考虑通过配置文件存储、数据库存储。在执行接口调用时查询该存储文件,找到与接口编码对应的接口地址进行调用。如果直接将接口地址作为入参,不便于开发记忆编写。
S40:根据接口返回结果判断返回状态和异常信息
各厂家返回数据的格式各不相同,需要从返回信息中截取到接口调用的状态(如是成功还是失败),如果为失败需要获取到异常信息进行记录。
当然可能同一厂家提供的返回数据格式也不相同,这时需要在代码中增加判断区分,如xx厂家保存接口返回{"IsSuccess":"false","Message":"XXXXX"},下推接口返回{"Result": {"ResponseStatus": {"ErrorCode": 500,"IsSuccess": false,"Errors":[{"FieldName": "","Message": "XXXX","DIndex": 0}]}}}。返回格式不同,会对数据解析造成困扰,但是无法左右第三方系统返回风格,此问题无法避免。
应该知道,各厂家返回的数据会包含调用状态;不同的厂家因为返回数据格式不同,需要编写不同的截取代码。
S41:根据上述截取到的信息对日志记录进行更新
根据日志唯一编号,去更新日志的接口调用的状态信息,异常信息以及接口原返回值(第三方接口返回的完整数据)。此时可以根据日志记录中的接口提供厂家、系统类型、编码和操作类型信息,准确定位到相应接口地址、该次日志记录的接口调用返回的状态、异常的原因。可以为追溯或者重试提供数据支撑。
S50:对于日志记录中接口调用状态为失败的记录重新返回步骤S10进行重试,实现对异常进行的补偿。
可以考虑两种方式,
A、图形化界面展示出来,用户手动勾选进行重试
该方式的好处是用户能准确执行应该再次调用的记录,如果失败的记录已在第三方系统进行了数据恢复,可考虑将该条记录置为成功,或者增加忽略标记,从而让用户在后续操作中不再对此条记录进行重试。
B、通过定时任务拉取失败记录进行重试
该方式的优势在于有效减少用户操作,自动去处理异常信息,但是如果用户已在第三方系统进行数据修复,会造成业务处理重复问题。并且记录可能在一段时间内或永久一直失败,系统会一直拖着这部分数据进行重试,容易造成系统负载过高,所以一般会对重试次数进行记录,当重试次数达到一定上线时,该条记录便不再重试。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

Claims (10)

1.一种第三方系统接口对接的异常补偿方法,其特征在于,包括:
录入接口信息;
将录入的接口信息插入到日志记录中;
对接口信息进行解析执行具体的接口调用;
对接口返回结果进行状态解析,并更新日志记录;
查找失败日志记录进行异常补偿。
2.根据权利要求1所述的一种第三方系统接口对接的异常补偿方法,其特征在于,所述录入接口信息包括:接口url和接口入参;
所述接口入参包括以下至少一项:
接口提供厂家、接口系统类型、接口编码、接口操作类型、接口调用方式、接口入参字符串;
其中,接口调用方式包括同步方式和异步方式。
3.根据权利要求2所述的一种第三方系统接口对接的异常补偿方法,其特征在于,还包括,将录入的接口信息插入到日志记录中后,返回该日志记录的唯一编码。
4.根据权利要求2所述的一种第三方系统接口对接的异常补偿方法,其特征在于,还包括,如果接口调用方式为异步方式,则将调用接口加入线程池执行。
5.根据权利要求2所述的一种第三方系统接口对接的异常补偿方法,其特征在于,所述对接口信息进行解析执行具体的接口调用,包括:
根据入参中的接口操作类型识别需要调用的接口地址,执行接口调用。
6.根据权利要求2所述的一种第三方系统接口对接的异常补偿方法,其特征在于,所述对接口信息进行解析执行具体的接口调用,包括:
预先定义与接口地址一一对应的接口编码并存储;
执行接口调用时查询该存储文件,找到与接口编码对应的接口地址进行调用。
7.根据权利要求3所述的一种第三方系统接口对接的异常补偿方法,其特征在于,所述对接口返回结果进行状态解析并更新日志记录,包括:
预先对入参中的厂家,根据返回的数据格式编写截取代码;所述截取代码用于从返回的数据中截取执行接口调用的状态;
根据日志唯一编号,更新日志的接口调用的状态信息,异常信息以及接口返回的完整数据。
8.根据权利要求7所述的一种第三方系统接口对接的异常补偿方法,其特征在于,所述查找失败日志记录进行异常补偿,包括:
对日志记录中接口调用状态为失败的记录,采用图形化界面展示出来,用户手动勾选进行重试。
9.根据权利要求7所述的一种第三方系统接口对接的异常补偿方法,其特征在于,所述查找失败日志记录进行异常补偿,包括:
设定定时任务拉取日志记录中接口调用状态为失败的记录进行重试。
10.根据权利要求9所述的一种第三方系统接口对接的异常补偿方法,其特征在于,还包括,
对重试次数进行记录,当重试次数达到预设限值时,该条记录不再重试。
CN202111577867.XA 2021-12-22 2021-12-22 一种第三方系统接口对接的异常补偿方法 Pending CN114253757A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111577867.XA CN114253757A (zh) 2021-12-22 2021-12-22 一种第三方系统接口对接的异常补偿方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111577867.XA CN114253757A (zh) 2021-12-22 2021-12-22 一种第三方系统接口对接的异常补偿方法

Publications (1)

Publication Number Publication Date
CN114253757A true CN114253757A (zh) 2022-03-29

Family

ID=80796635

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111577867.XA Pending CN114253757A (zh) 2021-12-22 2021-12-22 一种第三方系统接口对接的异常补偿方法

Country Status (1)

Country Link
CN (1) CN114253757A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112486719A (zh) * 2020-12-14 2021-03-12 上海悦易网络信息技术有限公司 一种用于rpc接口调用失败处理的方法及设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112486719A (zh) * 2020-12-14 2021-03-12 上海悦易网络信息技术有限公司 一种用于rpc接口调用失败处理的方法及设备

Similar Documents

Publication Publication Date Title
US9507697B2 (en) Completing functional testing
CN115080398A (zh) 一种接口自动化测试系统及方法
CN114253757A (zh) 一种第三方系统接口对接的异常补偿方法
CN113094362A (zh) 一种异步消息可靠投递和处理的方法和装置
CN113824815B (zh) 一种wsl2系统用的端口智能映射方法
WO2020253045A1 (zh) 配置化的数据转发异常补处理方法、装置及可读存储介质
CN112069082A (zh) 一种自动化测试方法及系统
CN111367725A (zh) 异步任务的在线监控方法、前端控制系统和业务响应平台
CN116185706A (zh) 数据备份方法、装置、计算及存储介质及电子设备
Cisco CIPM Release Notes 1.0.10(c)
WO2019196227A1 (zh) 平台整合的方法、装置、计算机设备和存储介质
CN114328180A (zh) 接口自动化测试方法、系统、电子设备及存储介质
CN111581081B (zh) 一种自动化测试系统及方法
CN113238940A (zh) 一种接口测试结果的比对方法、装置、设备和存储介质
CN115291940B (zh) App发版处理方法、装置、开发处理系统及存储介质
JP2009122985A (ja) サブプロセス実行システム及びサブプロセス実行プログラム
JP2016071397A (ja) テスト実行装置、テスト実行方法およびコンピュータプログラム
US20050038786A1 (en) Self-configuration of database tables
JP6353759B2 (ja) テスト実行装置、テスト実行方法およびコンピュータプログラム
CN117225657A (zh) 一种p板点胶流水线分选方法、存储介质及自动点胶装置
CN110570276B (zh) 一种服务器自适应匹配用户需求的匹配系统及方法
US11496429B1 (en) Managing and replaying persistent draft messages for entity data
CN107634957B (zh) 基于协议代理的数据和文件操作实时预保存方法和系统
CN116339691A (zh) 一种基于ci引擎流水线回调接口节点的处理方法
CN117216029A (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