接口调用方法、装置、设备及介质与流程

文档序号:32508774发布日期:2022-12-10 06:56阅读:77来源:国知局
接口调用方法、装置、设备及介质与流程

1.本技术涉及计算机技术领域,尤其涉及一种接口调用方法、装置、设备及介质。


背景技术:

2.随着大数据技术的发展,业务系统可通过引用第三方数据平台,获得更多数据来支持业务的执行。例如,企业向银行申请融资贷款时,银行的信贷系统可获取企业的基本资质及财务报表等数据,还可引用第三方数据系统获取更多数据,以建立多维度的风控模型,对企业进行风险控制。
3.相关技术中,业务系统与第三方数据系统的数据接口对接。由于第三方数据平台数量众多,第三方数据系统又提供大量的数据接口,该方式中业务系统需要逐一对接n个第三方数据系统的大量数据接口。
4.可见,上述方式中业务系统与第三方数据系统的系统间耦合性太高,导致业务系统的维护成本高、接口调用不容易拓展。


技术实现要素:

5.本技术提供一种接口调用方法、装置、设备及介质,用以解决业务系统与第三方数据系统的系统间耦合性太高,导致业务系统的维护成本高、接口调用不容易拓展的问题。
6.第一方面,本技术提供一种接口调用方法,包括:
7.接收来自业务系统的业务指令,所述业务指令指示按照目标规则调用第三方数据系统的数据接口以得到业务结果;
8.根据所述业务指令,向所述数据接口发送第一报文消息,所述第一报文消息指示按照所述目标规则调用所述数据接口;
9.响应于接收到所述数据接口返回的第二报文消息,对所述第二报文消息进行报文解析,得到所述业务结果;
10.将所述业务结果发送至所述业务系统。
11.在一种可行的实现方式中,所述根据所述业务指令,向所述数据接口发送第一报文消息,包括:
12.确定所述数据接口对应的报文要求;
13.根据所述报文要求和所述业务指令,生成所述第一报文消息;
14.向所述数据接口发送所述第一报文消息。
15.在一种可行的实现方式中,所述根据所述报文要求和所述业务指令,生成所述第一报文消息,包括:
16.对所述业务指令进行规则解析,生成与所述目标规则对应的规则消息;
17.将所述规则消息写入消息队列;
18.对所述消息队列进行消息读取,按照所述报文要求对读取得到的目标消息执行报文生成操作,得到所述第一报文消息。
19.在一种可行的实现方式中,所述对所述业务指令进行规则解析,生成与所述目标规则对应的规则消息,包括:
20.对所述业务指令进行规则解析,得到所述业务指令的指令标识和所述目标规则;
21.根据所述指令标识和所述目标规则,生成所述规则消息,其中,在所述目标规则为多个的情况下,所述规则消息为多个且所述目标规则与所述规则消息一一对应。
22.在一种可行的实现方式中,所述业务系统与所述消息队列一一对应,所述将所述规则消息写入消息队列,包括:
23.将所述规则消息写入与所述业务系统对应的目标消息队列。
24.在一种可行的实现方式中,所述规则消息中包括所述业务指令的指令标识和所述目标规则;
25.所述对所述消息队列进行消息读取,按照所述报文要求对读取得到的目标消息执行报文生成操作,得到所述第一报文消息,包括:
26.按照分布式流式处理方式,在所述消息队列中读取包含同一指令标识的所述目标消息,并按照所述报文要求对所述目标消息执行报文生成操作,得到所述第一报文消息。
27.在一种可行的实现方式中,所述响应于接收到所述数据接口返回的第二报文消息,对所述第二报文消息进行报文解析,得到所述业务结果,包括:
28.按照分布式流式处理方式,接收所述第二报文消息并对所述第二报文消息进行报文解析,得到所述业务结果。
29.第二方面,本技术提供一种接口调用装置,包括:
30.接收模块,用于接收来自业务系统的业务指令,所述业务指令指示按照目标规则调用第三方数据系统的数据接口以得到业务结果;
31.第一发送模块,用于根据所述业务指令,向所述数据接口发送第一报文消息,所述第一报文消息指示按照所述目标规则调用所述数据接口;
32.解析模块,用于响应于接收到所述数据接口返回的第二报文消息,对所述第二报文消息进行报文解析,得到所述业务结果;
33.第二发送模块,用于将所述业务结果发送至所述业务系统。
34.第三方面,本技术提供一种电子设备,包括:至少一个处理器和存储器;
35.所述存储器存储计算机执行指令;
36.所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上述第一方面所述的接口调用方法。
37.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上述第一方面所述的接口调用方法。
38.第五方面,本技术提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的接口调用方法。
39.本技术提供的接口调用方法、装置、设备及介质,接收来自业务系统的业务指令,业务指令指示按照目标规则调用第三方数据系统的数据接口以得到业务结果;根据业务指令,向数据接口发送第一报文消息,第一报文消息指示按照目标规则调用数据接口;响应于接收到数据接口返回的第二报文消息,对第二报文消息进行解析,得到业务结果;将业务结
果发送至业务系统。可以理解为通过本技术为业务系统调用第三方数据系统的数据接口提供中间件,由该中间件进行调用请求和调用结果的传递,业务系统无需关注第三方数据系统的数据接口,降低了业务系统与第三方数据系统的系统耦合性。
附图说明
40.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
41.图1为本技术实施例提供的应用场景示意图;
42.图2为本技术实施例提供的接口调用方法的流程示意图一;
43.图3为本技术实施例提供的接口调用方法的流程示意图二;
44.图4为本技术实施例提供的消息队列示例图;
45.图5为对报文消息进行生成、发送以及解析的作业过程的示例图;
46.图6为本技术实施例提供的1对n快速联机装置的结构示意图;
47.图7为本技术实施例提供的信贷系统调用第三方数据系统的数据接口的流程示意图;
48.图8为本技术实施例提供的接口调用装置的结构示意图;
49.图9为本技术实施例提供的一种电子设备的结构示意图。
50.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
51.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
52.相关技术中,业务系统直接调用第三方数据系统的数据接口,以获取更多的数据来支持业务的执行,以业务系统为信贷系统为例,在企业向银行申请融资贷款时,需通过银行的信贷系统对企业进行风控校验,信贷系统除了识别企业的基本资质及财务报表等数据之外,还可调用第三方数据平台提供的数据接口,建立多维度的风控模型,尽可能掌握企业的负面信息,进一步降低不良贷款率。然而,上述数据接口调用方式存在以下缺点:
53.缺点一、在外部数据源众多的情况下(即第三方数据系统较多),业务系统需要逐一对接n个第三方数据系统,业务系统与第三方数据系统的系统间耦合性太高,后期维护成本高,不容易对业务系统的接口调用进行拓展。
54.缺点二、业务系统同时调用上百个数据接口时,按照传统的多线程模式,服务器的资源开销太大。例如,多线程数量为s=t*c,其中,t表示业务指令的数量,c代表开启多线程的数量,在业务系统的服务器接收到大规模的业务指令的情况下,服务器的资源占用将瞬时飙升,严重情况下将导致服务器宕机或者服务器处于不可用状态,影响业务开展。
55.缺点三、不支持对数据接口的调用进行自由组合。每一业务指令只能固定联机调
用部分或全部的第三方数据平台,不利于各业务板块基于业务特性定制化调用外部的数据接口。
56.为解决上述缺点,本技术提供了一种接口调用方法,根据来自业务系统的业务指令,向数据接口发送调用数据接口的报文消息,根据数据接口返回的报文消息,向业务系统返回调用数据接口所得到的业务结果。如此,相当于在业务系统和第三方数据系统之间提供了中间件,降低了业务系统与第三方数据系统之间的耦合性,业务系统无需关注第三方数据系统的数据接口,减少了接口调用对业务系统的资源占用;而且,业务系统可在业务指令通过目标规则中实现数据接口调用的自由组合,实现基于业务特征定制化调用外部的数据接口,能够适用于不同的业务系统、不同的业务场景,易于拓展。
57.本技术实施例提供的接口调用方法,可以适用于图1所示的应用场景。如图1所示,应用场景涉及业务系统101、接口调用装置102以及第三方数据系统103,业务系统101、接口调用装置102以及第三方数据系统103可通过网络进行通信。其中,业务系统101、接口调用装置102以及第三方数据系统103可以为终端或者服务器,接口调用装置102还可以插件的形式与业务系统101运行于同一设备上,图1以业务系统101、接口调用装置102以及第三方数据系统103为服务器为例。本技术实施例提供的接口调用方法在接口调用装置102上运行,如图1所示,业务系统101可向接口调用装置102发送业务指令,接口调用装置102可根据业务指令向第三方数据系统103的数据接口发送第一报文消息,可接收第三方数据系统103的数据接口返回的第二报文消息,根据第二报文消息向业务系统发送业务结果。
58.其中,终端可以是个人数字处理(personal digital assistant,简称pda)设备、手持设备(例如智能手机、平板计算机)、计算设备(例如个人计算机(personal computer,简称pc))、车载设备、可穿戴设备(例如智能手表、智能手环)、以及智能家居设备(例如智能显示设备)等。服务器可以是分布式服务器、集中式服务器、云服务器等。
59.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
60.其中,本技术中各方法实施例的执行主体为接口调用装置,接口调用装置为电子设备,电子设备可以为终端或者服务器。
61.参考图2,图2为本技术实施例提供的接口调用方法的流程示意图一。如图2所示,该实施例提供的接口调用方法包括:
62.s201、接收来自业务系统的业务指令,业务指令指示按照目标规则调用第三方数据系统的数据接口以得到业务结果。
63.其中,业务指令中可携带一个或多个目标规则。目标规则即数据接口的调用规则,目标规则的规则内容可包括与数据接口调用相关的参数等。
64.其中,业务结果为按照目标规则调用第三方数据系统的数据接口后,基于数据接口的调用结果得到的,比如,业务指令为对某一企业进行风控校验的指令,则业务结果可为该企业是否存在风险、该企业所存在的风险事项等。
65.本实施例中,业务系统可响应于用户的业务请求,确定适用于业务请求的目标规则,生成携带目规则的业务指令,将业务指令发送至接口调用装置。接口调用装置可接收来自一个或多个业务系统的业务指令。
66.作为示例地,以业务系统为信贷系统为例,信贷系统在接收到企业用户的融资申请请求后,可确定与融资风控校验对应的接口调用规则,生成携带接口调用规则的风控校验指令,将风控校验指令发送至接口调用装置,以对企业用户进行风控校验。其中,接口调用规则即本实施例中的目标规则,风控校验指令即本实施例中的业务指令。
67.s202、根据业务指令,向数据接口发送第一报文消息,第一报文消息指示按照目标规则调用数据接口。
68.本实施例中,在接收到业务指令后,可对业务指令进行解析,从业务指令中获取与调用第三方数据系统的数据接口相关的数据内容,该数据内容包括目标规则。接着,可根据从业务指令中解析得到的数据内容,确定业务指令所指示调用的数据接口并生成第一报文消息。最后,向业务指令指示调用的数据接口发送第一报文消息。
69.s203、响应于接收到数据接口返回的第二报文消息,对第二报文消息进行报文解析,得到业务结果。
70.其中,第二报文消息可携带有数据接口的调用结果。
71.其中,业务系统通过业务指令指示调用的数据接口可为一个多个,可接收到一个或多个数据接口返回的第二报文消息。
72.本实施例中,在向数据接口发送第一报文消息后,可接收数据接口返回的第二报文消息。对第二报文消息进行解析,得到数据接口的调用结果。根据数据接口的调用结果,确定业务结果。在一种方式中,可确定业务结果包括一个或多个数据接口的调用结果;在又一种方式中,可对一个或多个数据接口的调用结果进行分析,得到业务结果。
73.作为示例地,信贷系统可通过风控校验指令指示调用一个或多个第三方数据系统的一个或多个数据接口。接口调用装置在接收到信贷系统的风控校验指令后,向一个或多个数据接口发送第一报文消息;接收一个或多个数据接口返回的第二报文消息,对一个或多个数据接口返回的第二报文消息进行解析,得到一个或多个第二报文消息中的调用结果;基于一个或多个第二报文消息中的调用结果进行风控分析,得到风控分析结果,即业务结果。
74.s204、将业务结果发送至业务系统。
75.本实施例中,在得到业务结果后,将业务结果发送至业务系统,从而,间接地实现业务系统对第三方数据系统的数据接口的调用。
76.作为示例地,以业务系统为信贷系统为例,信贷系统可通过风控校验指令指示调用一个或多个第三方数据系统的一个或多个数据接口。本实施例在接收到信贷系统的风控校验指令后,向一个或多个数据接口发送第一报文消息;接收一个或多个数据接口返回的第二报文消息,对一个或多个数据接口返回的第二报文消息进行解析,得到一个或多个第二报文消息中的调用结果;基于一个或多个第二报文消息中的调用结果进行风控分析,得到风控分析结果,即业务结果;将风控分析结果发送至信贷系统。
77.本技术实施例中,根据来自业务系统的业务指令,向数据接口发送调用数据接口的报文消息,根据数据接口返回的报文消息,向业务系统返回调用数据接口所得到的业务结果。相当于在业务系统和第三方数据系统之间提供了中间件,降低了业务系统与第三方数据系统之间的耦合性,减少了数据接口调用对业务系统的资源占用,提高了数据接口调用的独立性,能够适应于业务特性设置合适的目标规则,对不同的目标规则进行组合,实现
数据接口的灵活组合,可拓展性强。
78.在一些实施例中,目标规则的规则内容可包括目标规则的规则标识。其中,可预先设置好多个调用规则,在各个调用规则的规则内容中设置调用规则的规则标识,调用规则的规则标识对调用规则而言起唯一标识作用。从而,通过目标规则的规则标识,确定业务系统要具体按照哪个调用规则来进行数据接口的调用,提高数据接口调用的准确性。
79.可选地,目标规则的规则标识与第三方数据系统的数据接口相关联。从而,可基于目标规则的规则标识,准确地确定业务系统要求调用的数据接口。
80.可选地,目标规则的规则内容还可包括如下至少一种:目标规则的规则类型、接口输入参数、调用超时时间。从而,从类型、参数、时间等一个或多个方面来对第三方数据系统的数据接口的调用进行约束,使得第三方数据系统的数据接口的调用符合具体的业务需求。
81.其中,目标规则的规则类型可与业务系统的业务分析方式有关,可通过规则类型来指示第三方数据系统的数据接口按照与业务分析方式对应的数据分析方式提供数据;接口输入参数是数据接口所需要的输入数据;调用超时时间是调用数据接口的时间阈值,若调用数据接口的时长大于调用超时时间,则可结束数据接口的调用,避免在一个数据接口调用上长时间消耗资源。
82.进一步地,接口输入参数可包括共享参数和非共享参数,共享参数可由不同的目标规则共享,非共享参数仅适用于单个目标规则。在业务指令中可包括共享参数和规则列表,在规则列表中包括一个或多个目标规则,目标规则的规则内容可包括目标规则的规则标识、目标规则的规则类型、非共享参数、接口输入参数、调用超时时间。如此,提高了目标规则的内容丰富性,提高了业务指令的内容丰富性,在业务指令中可通过设置多个目标规则,实现对数据接口调用的灵活组合,使其更符合业务特性。
83.作为示例地,以业务系统为营销系统为例,业务指令可表示为:{融资企业名称:x;统一社会信用代码:xx;规则列表:{规则id:规则号1;规则类型:规则类型1;规则数值:阈值y;超时时间:超时时间t1秒};{规则id:规则号2;规则类型:规则类型1;规则数值:阈值z;超时时间:超时时间t2秒}}。其中,融资企业名称、统一社会系统代码为共享参数,规则id为规则标识,规则类型1表示其中一种规则类型,规则数值为非共享参数,在规则类型1为采用阈值模式进行风控判断的情况下,可以使用到规则数值中的阈值y、阈值z,超时时间即调用超时时间。
84.在一些实施例中,业务指令中还可携带业务系统的认证信息,认证信息可包括业务系统对应的用户名和身份密钥。在接收到来自业务系统的业务指令后,可基于业务指令中业务系统的认证信息,对业务系统进行鉴权处理,在业务系统成功通过鉴权后,再根据业务指令向第三方数据系统的数据接口发送第一报文消息。其中,对业务系统进行鉴权处理包括对业务系统对应的用户名和身份秘钥进行身份验证,以确定业务系统是否有权限使用本实施例提供的接口调用服务。从而,在本实施例为多个业务系统提供接口调用服务的情况下,通过鉴权方式提高为业务系统提供接口服务的安全性。
85.可选地,认证信息中还包括加密秘钥,对业务系统进行鉴权处理还包括:根据加密秘钥对业务指令进行解密处理,对从业务指令中解密得到的数据进行参数合法性校验。从而,通过身份验证、参数合法性校验,提高为业务系统提供接口服务的安全性、准确性。
86.在一些实施例中,考虑到不同的数据接口可能对接收到的报文消息有着不同的要求,只能接收和/或解析符合其要求的报文消息,因此,在根据业务指令向数据接口发送第一报文消息的过程中,可生成符合数据接口对应的报文要求的第一报文消息。如此,使得业务系统无需关注数据接口的报文要求,降低了业务系统与第三方数据系统的系统间耦合。
87.参考图3,图3为本技术实施例提供的接口调用方法的流程示意图二。如图3所示,该实施例提供的接口调用方法包括:
88.s301、接收来自业务系统的业务指令,业务指令指示按照目标规则调用第三方数据系统的数据接口以得到业务结果。
89.其中,s301的实现原理和技术效果可参照前述实施例,不再赘述。
90.s302、确定数据接口对应的报文要求。
91.其中,报文要求可包括数据格式要求(例如要求text格式或者json格式或者xml格式或者html格式)和/或报文配置要求,报文配置要求可包括接口标识配置、接口访问地址配置和/或接口入参配置。
92.本实施例中,可预先设置第三方数据系统的多个数据接口对应的报文要求。在接收到来自业务系统的业务指令后,可基于业务系统中的目标规则,确定业务指令所指示调用的数据接口。可在第三方数据系统的多个数据接口对应的报文要求中,确定业务指令所指示调用的数据接口对应的报文要求。
93.可选地,响应于报文要求设置指令,显示报文要求设置页面,在报文要求设置页面上显示数据接口对应的报文要求以及报文要求对应的修改控件,修改控件比如为数据格式的勾选键、报文配置的输入框等。如此,使得报文要求的配置过程可视化,提高报文要求设置的便捷性和准确性。
94.s303、根据报文要求和业务指令,生成第一报文消息。
95.本实施例中,在确定业务指令所指示调用的数据接口对应的报文要求之后,可按照报文要求,对从业务指令中获取与调用第三方数据系统的数据接口相关的数据内容进行调整,生成符合报文要求的第一报文消息。如此,提高第一报文消息生成的准确性,提高数据接口调用的准确性和成功率。
96.在一种可能的实现方式中,如图3所示,s303可包括:
97.s3031、对业务指令进行规则解析,生成与目标规则对应的规则消息。
98.在s3031中,对业务指令进行规则解析,即对业务指令进行指令解析,得到业务指令所携带的目标规则。根据业务指令所携带的目标规则,生成与目标规则对应的规则消息。其中,与目标规则对应的规则消息用于指示按照目标规则调用第三方数据系统的数据接口。
99.可选地,s3031包括:对业务指令进行规则解析,得到业务指令的指令标识和目标规则;根据业务指令的指令标识和目标规则,生成规则消息。在目标规则为多个的情况下,规则消息为多个且目标规则与规则消息一一对应。
100.本可选方式中,指令标识用于唯一标识业务指令。从业务指令中解析得到业务指令的指令标识和目标规则,生成携带业务指令的指令标识和目标规则的规则消息。从而,通过指令标识来体现规则消息所属的业务指令,实现对基于同一业务指令生成的规则消息的有序管理。
101.s3032、将规则消息写入消息队列。
102.在s3032中,在生成规则消息后,可将规则消息写入至消息队列中。其中,可按照规则消息的生成时间先后将规则消息写入至消息队列中。
103.可选地,业务系统与消息队列一一对应,s3032包括:将规则消息写入与业务系统对应的目标消息队列。从而,通过不同的消息队列,实现对基于不同业务系统的业务指令生成的规则消息的区分和对基于同一业务系统的业务指令生成的规则消息的关联。
104.可选地,为确保业务系统要求调用的每个数据接口都被调用到,消息队列可包括第一子队列和第二子队列。其中,第一子队列用于写入规则消息,第二子队列用于写入规则消息在第一子队列中的存放序号。通过遍历第二子队列中的存放序号,从第一子队列中读取存放序号对应的规则消息。
105.作为示例地,图4为本技术实施例提供的消息队列示例图,如图4所示,规则消息的生产者将规则消息msg写入第一子队列中,将规则消息在第一子队列中的存放序号写入至第二子队列中,由第一子队列和第二子队列结合可得到业务系统u对应的消息队列。其中,第二子队列中的存放序号与第一子队列中的规则消息一一映射。
106.可选地,采用rocketmq消息中间件实现消息队列的构建、消息队列中规则消息的写入、消息队列中规则消息的读出。其中,rocketmq消息中间件是基于编程语言java、队列模型的分布式开源消息中间件,采用rocketmq消息中间件有利用提高消息队列构建、写入和读出效率。
107.其中,除了rocketmq消息中间件之外,还可采用其他具备消息队列模型的消息中间件,比如kafka、rabbitmq等开源消息中间件。
108.s3033、对消息队列进行消息读取,按照报文要求对读取得到的目标消息执行报文生成操作,得到第一报文消息。
109.其中,规则消息与第一报文消息一一对应,换句话说,一个规则消息可对应生成一个第一报文消息。
110.在s3033中,从消息队列中读取规则消息,按照报文要求对读取到的规则消息执行报文生成操作,生成第一报文消息。
111.在报文要求包括数据格式要求和/或报文配置要求,报文配置要求包括接口标识配置、接口访问地址配置和/或接口入参配置的情况下,可从规则消息中获取目标规则,将目标规则中的接口输入参数的数据格式转换为数据格式要求中的数据格式,可将数据格式换后的接口输入参数和/或报文配置要求中的各项配置添加至第一报文消息中,生成最终的第一报文消息。
112.可选地,在规则消息中包括业务指令的指令标识和目标规则的情况下,s3033可包括:按照分布式流式处理方式,在消息队列中读取包含同一指令标识的目标消息,并按照报文要求对目标消息执行报文生成操作,得到第一报文消息。从而,通过分布式流式处理方式,提高第一报文消息的生成效率,实现对业务请求的快速处理,提高了第三方数据系统的数据接口调用效率。
113.其中,分布式是指任务布局方式,流式是指数据处理方式。分布式流式处理方式,是指在分布式布局中由多个作业模块实现多个消息的并行处理,在单个作业模块中按照数据流的方式对规则消息进行一一处理。
114.本可选方式中,可从消息队列中依次读取多个规则消息,将多个规则消息分发给多个报文处理组件,由多个报文处理组件并行进行报文生成,生成规则消息对应的第一报文消息。如此,提高第一报文消息的生成效率。其中,报文处理模块用于报文生成、报文解析,作业模块的布局为分布式布局。
115.进一步地,可采用计算框架组件storm实现报文消息的分布式流处理,其中计算框架storm是一种实时的且具备低延迟、高容错性、分布式流处理的开源计算框架组件,有利于提高报文消息的处理效率。
116.其中,除了计算框架组件storm之外,还可采用其他具备实时性和高可用特性的组件,如flink、jstorm等开源计算框架组件。
117.可选地,在第一报文消息的报文结构较为复杂的情况下,在第一报文消息的生成过程中还可进行报文组装操作,即报文生成操作包括报文组装操作。
118.在s303的上述实现方式中,通过消息队列的方式,将并发的业务指令转换为能够以串行化方式执行的规则消息,降低数据接口调用的并发量,使得数据接口的调用更为有序,效率更高,资源利用更为合理。
119.s304、向数据接口发送第一报文消息。
120.其中,s304的实现方式和技术效果可参照前述实施例,不再赘述。
121.在一种可能的实现方式中,可采用分布式流处理方式,向数据接口发送第一报文消息,以提高第一报文消息的发送效率。
122.本实现方式中,从消息队列中依次读取多个规则消息,将多个规则消息分发给多个报文处理组件,由多个报文处理组件并行进行报文生成,生成规则消息对应的第一报文消息,再由多个报文处理组件将第一报文消息发送给相应的数据接口。如此,实现按照分布式流处理方式发送第一报文消息。
123.s305、响应于接收到数据接口返回的第二报文消息,对第二报文消息进行报文解析,得到业务结果。
124.其中,s305的实现方式和技术效果可参照前述实施例,不再赘述。
125.在一种可能的实现方式中,按照分布式流式处理方式,接收第二报文消息并对第二报文消息进行报文解析,得到业务结果,以提高第二报文消息的解析效率,提高业务结果的生成效率。
126.本实现方式中,在由多个报文处理组件将第一报文消息发送给相应的数据接口之后,可通过多个报文处理组件接收数据接口返回的第二报文消息,第二报文消息可携带有通过第一报文消息调用数据接口的调用结果。在各个报文处理组件中,对第二报文消息进行报文解析,得到数据接口的调用结果,直至得到业务指令所指示调用的所有数据接口的调用结果。根据业务指令所指示调用的所有数据接口的调用结果,得到业务结果。
127.作为示例地,图5为对报文消息进行生成、发送以及解析的作业过程的示例图,如图5所示,对报文消息进行生成、发送以及解析的作业过程可表示为拓扑形式的作业过程,具体如下:先进行指令接收,即从消息队列中依次读取多个规则消息;将多个规则消息分发给不同的报文处理组件,其中每一列表示一个报文处理组件,报文处理组件进行报文组装、报文请求(即发送第一报文消息)、报文解析(即对第二报文消息进行解析)。最后,结合多个报文处理组件解析得到的调用结果,确定业务结果,基于业务结果进行结果推送(即将业务
结果发送给业务系统)。如此,通过拓扑形式的作业过程实现对报文消息的分布式流式处理,提高了报文消息的处理效率。
128.s306、将业务结果发送至业务系统。
129.其中,s306的实现方式和技术效果可参照前述实施例,不再赘述。
130.本技术实施例中,在接收到来自业务系统的业务指令后,基于业务指令生成符合数据接口对应的报文要求的第一报文消息,向数据接口发送第一报文消息。在接收到数据接口返回的第二报文消息后,通过解析第二报文消息,得到业务结果,向业务系统返回业务结果。从而,实现业务系统对数据接口多间接调用,业务系统无需关心数据接口的数量、报文要求等,降低了业务系统与第三方数据系统的耦合性,还可通过目标规则实现数据接口调用的灵活性,有利于适用于业务特性灵活设计合适的数据接口调用方案。
131.作为示例的,图6为本技术实施例提供的1对n快速联机装置(即接口调用装置)的结构示意图,其中,n是指数据接口的数量。如图6所示,业务系统为信贷系统,1对n快速联机装置可包括鉴权处理器、报文转换器以及解析处理器。其中,鉴权处理器用于访问鉴权(即对信贷系统进行身份校验)、入参校验(即参数合法性校验)、规则解析(即指令解析以得到目标规则)、消息推送(将消息推送至解析处理器);报文转换器用于报文可视化配置和报文格式化配置,报文可视化配置即通过可视化方式实现报文要求的配置,报文格式化配置是指配置报文的数据格式要求;解析处理器用于指令接收、报文组装、报文请求、结果解析、结果推送,具体可参照图5的描述,在此不再赘述。如图6所示,1对n快速联机装置可接收来自信贷系统的请求指令(即业务指令)1、请求指令2、请求指令3、
……
请求指令n,其中,请求指令1~n可分别请求调用数据接口1~n;1对快速链接装置在进行结果推送的过程中,可返回接收指令(包含业务结果的指令)1、接收指令2、接收指令3、
……
接收指令n,其中,接收指令1~n可分别基于请求指令1~n分别调用数据接口后对应的业务结果1~n。
132.作为示例的,图7为本技术实施例提供的信贷系统调用第三方数据系统的数据接口的流程示意图。以图6中的1对n快速联机装置执行本技术实施例提供的数据调用方法为例,如图7所示,首先,信贷系统接收企业用户的融资申请指令;接着,信贷系统响应于融资申请指令,生成风控校验指令并将风控校验指令发送给鉴权处理器,风控校验指令指示按照目标规则调用第三方数据系统的数据结构,以对企业用户进行融资风控校验;在鉴权处理器中,对风控校验指令进行请求鉴权(比如身份校验、防火墙、指令解密等),对通过鉴权的风控校验指令进行入参合法性校验、规则解析,生成规则消息,将规则消息写入消息队列中;之后,解析处理器接收消息队列中的规则消息,基于规则消息进行报文组装、发送报文请求,报文请求在符合报文配置的情况下被报文转换器发送至第三方数据系统的数据接口;第三方数据系统的数据接口向解析处理器返回报文消息,解析处理器对数据接口返回的报文消息进行报文解析,直至获得风控校验指令指示调用的所有数据接口返回的报文消息后向信贷系统进行结果推送,完成风控校验业务。
133.下述为本技术装置实施例,可以用于执行本技术对应的方法实施例。对于本技术装置实施例中未披露的细节,请参照本技术对应的方法实施例。
134.图8为本技术实施例提供的接口调用装置的结构示意图。如图8所示,本实施例提供的接口调用装置800,包括:
135.接收模块801,用于接收来自业务系统的业务指令,业务指令指示按照目标规则调
用第三方数据系统的数据接口以得到业务结果;
136.第一发送模块802,用于根据业务指令,向数据接口发送第一报文消息,第一报文消息指示按照目标规则调用数据接口;
137.解析模块803,用于响应于接收到数据接口返回的第二报文消息,对第二报文消息进行报文解析,得到业务结果;
138.第二发送模块804,用于将业务结果发送至业务系统。
139.在一种可行的实现方式中,第一发送模块802具体用于:确定数据接口对应的报文要求;根据报文要求和业务指令,生成第一报文消息;向数据接口发送第一报文消息。
140.在一种可行的实现方式中,在根据报文要求和业务指令,生成第一报文消息的过程中,第一发送模块802具体用于:对业务指令进行规则解析,生成与目标规则对应的规则消息;将规则消息写入消息队列;对消息队列进行消息读取,按照报文要求对读取得到的目标消息执行报文生成操作,得到第一报文消息。
141.在一种可行的实现方式中,在对业务指令进行规则解析,生成与目标规则对应的规则消息的过程中,第一发送模块802具体用于:对业务指令进行规则解析,得到业务指令的指令标识、业务指令中的业务参数以及目标规则;根据指令标识、业务参数以及目标规则,生成规则消息,其中,在目标规则为多个的情况下,规则消息为多个且目标规则与规则消息一一对应。
142.在一种可行的实现方式中,业务系统与消息队列一一对应,在将规则消息写入消息队列的过程中,第一发送模块802具体用于:将规则消息写入与业务系统对应的目标消息队列。
143.在一种可行的实现方式中,规则消息中包括业务指令的指令标识和目标规则;在对消息队列进行消息读取,按照报文要求对读取得到的目标消息执行报文生成操作,得到第一报文消息的过程中,第一发送模块802具体用于:按照分布式流式处理方式,在消息队列中读取包含同一指令标识的目标消息,并按照报文要求对目标消息执行报文生成操作,得到第一报文消息。
144.在一种可行的实现方式中,解析模块803具体用于:按照分布式流式处理方式,接收第二报文消息并对第二报文消息进行报文解析,得到业务结果。
145.值得说明的,上述各实施例提供的接口调用装置,可用于执行上述任一实施例提供的接口调用方法中的各步骤,具体实现方式和技术效果类似,这里不再赘述。
146.本技术所提供的上述各装置实施例仅仅是示意性的,其中的模块划分仅仅是一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个模块可以结合或者可以集成到另一个系统。各个模块相互之间的耦合可以是通过一些界面实现,这些界面通常是电性通信界面,但是也不排除可能是机械界面或其他的形式界面。因此,作为分离部件说明的模块可以是或者也可以不是物理上分开的,既可以位于一个地方,也可以分布到同一个或不同设备的不同位置上。
147.图9为本技术实施例提供的一种电子设备的结构示意图。如图9所示,该电子设备900可以包括:至少一个处理器901和存储器902。图9示出的是以一个处理器为例的电子设备。
148.存储器902,用于存放处理器901的程序。具体地,程序可以包括程序代码,程序代
码包括计算机操作指令。
149.存储器902可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
150.处理器901配置为用于执行存储器902存储的计算机程序,以实现以上各方法实施例中接口调用方法中的各步骤。
151.其中,处理器901可能是一个中央处理器(central processing unit,简称为cpu),或者是特定集成电路(application specific integrated circuit,简称为asic),或者是被配置成实施本技术实施例的一个或多个集成电路。
152.可选地,存储器902既可以是独立的,也可以跟处理器901集成在一起。当存储器902是独立于处理器901之外的器件时,电子设备900,还可以包括:总线903,用于连接处理器901以及存储器902。总线可以是工业标准体系结构(industry standard architecture,简称为isa)总线、外部设备互连(peripheral component,pci)总线或扩展工业标准体系结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等,但并不表示仅有一根总线或一种类型的总线。
153.可选的,在具体实现上,如果存储器902和处理器901集成在一块芯片上实现,则存储器902和处理器901可以通过内部界面完成通信。
154.本技术还提供了一种计算机可读存储介质,该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁盘或者光盘等各种可以存储计算机执行指令的介质,具体的,该计算机可读存储介质中存储有计算机执行指令,当电子设备的至少一个处理器执行该计算机执行指令时,电子设备执行上述的各种实施方式提供的接口调用方法的各个步骤。
155.本技术实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在可读存储介质中。电子设备的至少一个处理器可以从可读存储介质读取该计算机程序,至少一个处理器执行该计算机程序使得电子设备实施上述的各种实施方式提供的接口调用方法的各个步骤。
156.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其他实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。
157.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1