CN112527421A - 业务调用方法、装置、设备及存储介质 - Google Patents

业务调用方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112527421A
CN112527421A CN202011578218.7A CN202011578218A CN112527421A CN 112527421 A CN112527421 A CN 112527421A CN 202011578218 A CN202011578218 A CN 202011578218A CN 112527421 A CN112527421 A CN 112527421A
Authority
CN
China
Prior art keywords
service
target
module
parameter information
request
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
CN202011578218.7A
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.)
Ping An Puhui Enterprise Management Co Ltd
Original Assignee
Ping An Puhui Enterprise Management 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 Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN202011578218.7A priority Critical patent/CN112527421A/zh
Publication of CN112527421A publication Critical patent/CN112527421A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/75Structural analysis for program understanding

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及计算机技术领域,公开了一种业务调用方法、装置、设备及存储介质,用于提高业务代码维护效率。业务调用方法包括:获取业务唯一标识和至少一个业务请求参数信息;通过预设流程控制服务按照业务唯一标识和至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集;根据校验规则集对至少一个业务请求参数信息进行规则校验,按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路。此外,本发明还涉及区块链技术,待调用业务链路可存储于区块链节点中。

Description

业务调用方法、装置、设备及存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种业务调用方法、装置、设备及存储介质。
背景技术
目前很多系统流程都是固定的,在代码中存在大量条件判断,符合某个条件执行某个业务分支,符合另一个条件执行另一个业务分支,新增业务则新增判断条件与相关的业务分支代码,每次都需要对该块代码进行改动,整个代码由一长串判断组成,维护非常困难,容易出错。
新增业务逻辑是个非常大的挑战,需要保证原来的业务逻辑没有问题,不被新增的业务逻辑所影响,便需要对原来的业务逻辑非常熟悉,确保没有漏掉应有的判断,并对前面的每一个判断条件遍历检查一遍。例如在调试debug模式调试代码,以便于对整块逻辑更好理解,如果考虑不周而引入新的判断则有可能引发严重的生产事故;而且修复耗时,再次修改代码并仔细验证确保不再出问题,代码维护效率低。
发明内容
本发明提供了一种业务调用方法、装置、设备及存储介质,用于提高业务代码维护效率,并降低代码量。
为实现上述目的,本发明第一方面提供了一种业务调用方法,包括:获取并记录目标业务模块调用请求,从所述目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息;通过预设流程控制服务按照所述业务唯一标识和所述至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集;根据所述校验规则集对所述至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照所述目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;基于所述至少一个业务请求参数信息和所述业务返回参数信息执行所述目标业务流程函数,得到执行结果,按照所述执行结果确定待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端。
可选的,在本发明第一方面的第一种实现方式中,所述获取并记录目标业务模块调用请求,从所述目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息,包括:接收目标业务模块调用请求,生成请求时刻,将所述目标业务模块调用请求和所述请求时刻存储至预设数据库中,并设置目标业务模块调用请求的业务状态为正在处理状态;对所述目标业务模块调用请求进行参数解析,得到业务唯一标识和至少一个业务请求参数信息。
可选的,在本发明第一方面的第二种实现方式中,所述通过预设流程控制服务按照所述业务唯一标识和所述至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集,包括:将所述业务唯一标识和所述至少一个业务请求参数信息输入至预设流程控制服务,通过所述预设流程控制服务检索预设配置数据表,得到检索结果,并判断所述检索结果是否为空值;若所述检索结果为空值,则生成包含目标业务模块调用请求存在异常的提示信息,并将所述提示信息发送至终端;若所述检索结果不为空值,则从所述检索结果中提取目标业务模块对应的目标模块编码和校验规则集。
可选的,在本发明第一方面的第三种实现方式中,所述根据所述校验规则集对所述至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照所述目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息,包括:按照预设校验优先级从高到低的顺序,依序采用预设校验优先级对应的校验规则集分别对所述至少一个业务请求参数信息进行规则校验,得到每个业务请求参数信息对应的校验结果;将所述至少一个业务请求参数信息和每个业务请求参数信息对应的校验结果存储至预设操作日志表中;当全部业务请求参数信息校验通过时,按照所述目标模块编码从散列表中读取目标业务流程函数和业务返回参数信息。
可选的,在本发明第一方面的第四种实现方式中,所述基于所述至少一个业务请求参数信息和所述业务返回参数信息执行所述目标业务流程函数,得到执行结果,按照所述执行结果确定待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端,包括:将所述至少一个业务请求参数信息和所述业务返回参数信息输入至所述目标业务流程函数中,并调用所述目标业务流程函数,得到执行结果,所述执行结果包括执行成功和执行失败;当所述执行结果为执行失败时,基于所述执行结果确定待调用业务链路为停止执行业务,生成错误提示信息,并将所述执行结果和所述错误提示信息发送至终端;当所述执行结果为执行成功时,基于所述执行结果确定业务流程状态为继续执行业务,按照所述业务唯一标识从预设数据表中筛选目标业务模块的上下游业务关系,得到待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端。
可选的,在本发明第一方面的第五种实现方式中,在所述获取并记录目标业务模块调用请求,从所述目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息之前,所述业务调用方法还包括:通过所述预设流程控制服务扫描所有已添加注解的业务模块,得到多个预设模块编号;将每个预设模块编号与每个业务模块对应的业务唯一标识映射存储至所述散列表中。
可选的,在本发明第一方面的第六种实现方式中,在所述基于所述至少一个业务请求参数信息和所述业务返回参数信息执行所述目标业务流程函数,得到执行结果,按照所述执行结果确定待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端之后,所述业务调用方法还包括:获取执行时长,将所述目标业务模块调用请求、所述执行结果和所述执行时长记录至预设操作日志中;基于所述执行时长对所述目标业务流程函数进行优化处理,得到优化后的业务流程函数,并基于所述优化后的业务流程函数进行业务处理。
本发明第二方面提供了一种业务调用装置,包括:提取模块,用于获取并记录目标业务模块调用请求,从所述目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息;确定模块,用于通过预设流程控制服务按照所述业务唯一标识和所述至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集;校验模块,用于根据所述校验规则集对所述至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照所述目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;执行模块,用于基于所述至少一个业务请求参数信息和所述业务返回参数信息执行所述目标业务流程函数,得到执行结果,按照所述执行结果确定待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端。
可选的,在本发明第二方面的第一种实现方式中,所述提取模块具体用于:接收目标业务模块调用请求,生成请求时刻,将所述目标业务模块调用请求和所述请求时刻存储至预设数据库中,并设置目标业务模块调用请求的业务状态为正在处理状态;对所述目标业务模块调用请求进行参数解析,得到业务唯一标识和至少一个业务请求参数信息。
可选的,在本发明第二方面的第二种实现方式中,所述确定模块具体用于:将所述业务唯一标识和所述至少一个业务请求参数信息输入至预设流程控制服务,通过所述预设流程控制服务检索预设配置数据表,得到检索结果,并判断所述检索结果是否为空值;若所述检索结果为空值,则生成包含目标业务模块调用请求存在异常的提示信息,并将所述提示信息发送至终端;若所述检索结果不为空值,则从所述检索结果中提取目标业务模块对应的目标模块编码和校验规则集。
可选的,在本发明第二方面的第三种实现方式中,所述校验模块具体用于:按照预设校验优先级从高到低的顺序,依序采用预设校验优先级对应的校验规则集分别对所述至少一个业务请求参数信息进行规则校验,得到每个业务请求参数信息对应的校验结果;将所述至少一个业务请求参数信息和每个业务请求参数信息对应的校验结果存储至预设操作日志表中;当全部业务请求参数信息校验通过时,按照所述目标模块编码从散列表中读取目标业务流程函数和业务返回参数信息。
可选的,在本发明第二方面的第四种实现方式中,所述执行模块具体用于:将所述至少一个业务请求参数信息和所述业务返回参数信息输入至所述目标业务流程函数中,并调用所述目标业务流程函数,得到执行结果,所述执行结果包括执行成功和执行失败;当所述执行结果为执行失败时,基于所述执行结果确定待调用业务链路为停止执行业务,生成错误提示信息,并将所述执行结果和所述错误提示信息发送至终端;当所述执行结果为执行成功时,基于所述执行结果确定业务流程状态为继续执行业务,按照所述业务唯一标识从预设数据表中筛选目标业务模块的上下游业务关系,得到待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端。
可选的,在本发明第二方面的第五种实现方式中,所述业务调用装置还包括:扫描模块,用于通过所述预设流程控制服务扫描所有已添加注解的业务模块,得到多个预设模块编号;存储模块,用于将每个预设模块编号与每个业务模块对应的业务唯一标识映射存储至所述散列表中。
可选的,在本发明第二方面的第六种实现方式中,所述业务调用装置还包括:记录模块,用于获取执行时长,将所述目标业务模块调用请求、所述执行结果和所述执行时长记录至预设操作日志中;优化模块,用于基于所述执行时长对所述目标业务流程函数进行优化处理,得到优化后的业务流程函数,并基于所述优化后的业务流程函数进行业务处理。
本发明第三方面提供了一种业务调用设备,包括:存储器和至少一个处理器,所述存储器中存储有指令;所述至少一个处理器调用所述存储器中的所述指令,以使得所述业务调用设备执行上述的业务调用方法。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的业务调用方法。
本发明提供的技术方案中,获取并记录目标业务模块调用请求,从所述目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息;通过预设流程控制服务按照所述业务唯一标识和所述至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集;根据所述校验规则集对所述至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照所述目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;基于所述至少一个业务请求参数信息和所述业务返回参数信息执行所述目标业务流程函数,得到执行结果,按照所述执行结果确定待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端。本发明实施例中,通过根据校验规则集对至少一个业务请求参数信息进行规则校验,提高了业务请求参数的准确性;并按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路,提高了业务代码维护效率,降低了代码量。
附图说明
图1为本发明实施例中业务调用方法的一个实施例示意图;
图2为本发明实施例中业务调用方法的另一个实施例示意图;
图3为本发明实施例中业务调用装置的一个实施例示意图;
图4为本发明实施例中业务调用装置的另一个实施例示意图;
图5为本发明实施例中业务调用设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种业务调用方法、装置、设备及存储介质,用于通过根据校验规则集对至少一个业务请求参数信息进行规则校验,提高业务请求参数的准确性;基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果和待调用业务链路,降低代码量。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中业务调用方法的一个实施例包括:
101、获取并记录目标业务模块调用请求,从目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息。
其中,目标业务模块调用请求可用于指示终端发送的调用对应的信贷业务的请求。例如,终端向服务器发送人脸识别请求,或者风控授信请求等。目标业务模块包括渠道服务、身份识别服务、信息录入服务、风险授信服务、征信增信服务、风险审批服务、业务签约服务以及放款服务等。目标业务模块具有业务唯一标识,例如,渠道服务对应的业务唯一标识可以为module_001,身份识别服务对应的业务唯一标识可以为module_002,以此类推,也可以为其他标识值,具体此处不做限定。
具体的,服务器获取目标业务模块调用请求和请求时刻,并将目标业务模块调用请求以及请求时刻记录至预设数据库中;服务器通过预设业务队列按照预设参数名称从目标业务模块调用请求中获取业务唯一标识和至少一个业务请求参数信息,服务器通过业务唯一标识使得在不同业务实现互相关联,至少一个业务请求参数信息包括至少一个按照不同的业务预先设置的业务参数名称和业务参数值。
可以理解的是,本发明的执行主体可以为业务调用装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。
102、通过预设流程控制服务按照业务唯一标识和至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集。
具体的,服务器从预设流程控制服务中的预设配置数据表查找与业务唯一标识和至少一个业务请求参数信息相匹配的目标模块编码和校验规则集,预设配置数据表用于存储目标模块编码和校验规则集、以及业务唯一标识和至少一个业务请求参数信息与校验规则间的对应关系。进一步地,服务器根据校验规则集对至少一个业务请求参数信息进行参数合法性验证。
103、根据校验规则集对至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息。
具体的,服务器调用校验规则集分别对至少一个业务请求参数信息进行参数校验,得到每个业务请求参数信息对应的校验结果;服务器对每个业务请求参数信息对应的校验结果进行合并,得到最终校验结果;当最终校验结果为至少一个业务请求参数信息校验未通过时,服务器生成警示信息,并将警示信息发送至终端;当最终校验结果为全部业务请求参数信息校验通过时,服务器按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息,目标业务流程函数用于指示目标业务模块调用请求所调用业务模块的业务逻辑,以使得服务器调用处理目标业务模块调用请求的业务逻辑,服务器通过预先校验业务请求参数信息的方式,减轻了服务器的数据处理压力,提高了数据处理效率。
104、基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路,并将执行结果和待调用业务链路发送至终端。
其中,目标业务流程函数包括至少一个子业务模块构成的业务链路,用于处理信贷业务,至少一个子业务模块预先按照预设执行顺序进行组合,也就是,目标业务流程函数中的每个子业务模块均是可以灵活配置组合的,提高了业务处理效率,并实现了业务定制化。进一步地,服务器将至少一个业务请求参数信息和业务返回参数信息设置为目标业务流程函数的输入参数;然后,服务器基于预设执行顺序,依次调用目标业务流程函数中的至少一个子业务模块,得到执行结果;最后,服务器基于执行结果确定待调用业务链路,并将执行结果和待调用业务链路发送至终端。例如,待调用业务链路可包括信贷信息录入业务和信息审核业务,还可以包括其他业务,具体此处不做限定。
进一步地,服务器将待调用业务链路存储于区块链数据库中,具体此处不做限定。
本发明实施例中,通过根据校验规则集对至少一个业务请求参数信息进行规则校验,提高了业务请求参数的准确性;并按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路,提高了业务代码维护效率,降低了代码量。
请参阅图2,本发明实施例中业务调用方法的另一个实施例包括:
201、获取并记录目标业务模块调用请求,从目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息。
其中,业务唯一标识与目标业务模块调用请求存在一一对应关系。可选的,首先,服务器接收目标业务模块调用请求,生成请求时刻,将目标业务模块调用请求和请求时刻存储至预设数据库中,并设置目标业务模块调用请求的业务状态为正在处理状态。其中,目标业务模块调用请求的业务状态包括待处理状态、正在处理状态、处理成功状态和处理失败状态,预设数据库可以为关系型数据库,也可以为其他类型的数据库,具体此处不做限定。具体的,当服务器接收到终端发送的目标业务模块调用请求时,服务器确定目标业务模块调用请求对应的请求时刻,服务器按照结构化语言语法规则将目标业务模块调用请求和请求时刻转换为插入语句,服务器连接预设数据库,执行插入语句,将目标业务模块调用请求和请求时刻写入至预设数据库中。
其次,服务器对目标业务模块调用请求进行参数解析,得到业务唯一标识和至少一个业务请求参数信息。进一步地,服务器在对目标业务模块调用请求进行参数解析之后,服务器还可以判断目标业务模块调用请求是否存在重复。具体的,服务器按照预设时长、业务状态、业务唯一标识和至少一个业务请求参数信息查询预设数据库,得到查询结果,当查询结果的数量多于一个时,服务器确定目标业务模块调用请求存在重复,服务器从内存数据库中获取缓存的业务返回参数信息,并将缓存的业务返回参数信息发送至终端,并将目标业务模块调用请求的业务状态更新为处理成功状态,提高了数据处理效率。其中,预设时长可以根据实际需求进行配置,如1分钟、2分钟、3分钟等,具体此处不做限定。服务器还可以判断目标业务模块调用请求是否存在过期,例如,服务器检测至少一个业务请求参数信息中用户令牌的超期时刻已过期,则服务器确定目标业务模块调用请求存在过期,也可以为其他超期检测情形,具体此处不做限定。若目标业务模块调用请求存在过期,则服务器向终端发送包含请求过期的错误提示信息,以使得终端重新发送目标业务模块调用请求。
202、通过预设流程控制服务按照业务唯一标识和至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集。
例如,服务器获取身份识别服务的业务唯一标识module_002,和至少一个业务请求参数信息为姓名A、身份证号码xxx和人脸图片信息,服务器基于module_002获取目标模块编码为face_rec_001,以及校验规则集为检测业务请求参数信息是否为空值、检测身份证号码参数是否为18位字符以及检测人脸图片信息参数是否符合预设条件等。
可选的,服务器将业务唯一标识和至少一个业务请求参数信息输入至预设流程控制服务,通过预设流程控制服务检索预设配置数据表,得到检索结果,并判断检索结果是否为空值;若检索结果为空值,则服务器生成包含目标业务模块调用请求存在异常的提示信息,并将提示信息发送至终端;若检索结果不为空值,则服务器从检索结果中提取目标业务模块对应的目标模块编码和校验规则集。
203、根据校验规则集对至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息。
可以理解的是,服务器通过校验规则集对至少一个业务请求参数信息进行规则校验,提高了处理目标业务模块调用请求的准确性。可选的,服务器按照预设校验优先级从高到低的顺序,依序采用预设校验优先级对应的校验规则集分别对至少一个业务请求参数信息进行规则校验,得到每个业务请求参数信息对应的校验结果;服务器将至少一个业务请求参数信息和每个业务请求参数信息对应的校验结果存储至预设操作日志表中;当全部业务请求参数信息校验通过时,服务器按照目标模块编码从散列表中读取目标业务流程函数和业务返回参数信息。
具体的,服务器将目标模块编码设置为目标键,并通过预设散列函数确定目标键在散列表中的索引位置信息,并依据该索引位置信息在索引区中查找对应的散列索引链表,得到匹配的数据记录,也就是目标业务流程函数和业务返回参数信息。进一步地,服务器对目标业务流程函数和业务返回参数信息加密后存储至散列表中,提高数据的安全性。需要说明的是,存放记录的数组叫做散列表,散列表也叫哈希表,是根据关键码值直接进行访问的数据结构。也就是,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。
204、基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路,并将执行结果和待调用业务链路发送至终端。
其中,执行结果用于指示目标业务模块调用请求是否满足预设的业务执行条件,也就是,当执行结果为执行成功时,服务器确定目标业务模块调用请求满足预设的业务执行条件;当目标业务模块调用请求不满足预设的业务执行条件执行失败。
可选的,服务器将至少一个业务请求参数信息和业务返回参数信息输入至目标业务流程函数中,并调用目标业务流程函数,得到执行结果,执行结果包括执行成功和执行失败;当执行结果为执行失败时,服务器基于执行结果确定待调用业务链路为停止执行业务,生成错误提示信息,并将执行结果和错误提示信息发送至终端;当执行结果为执行成功时,服务器基于执行结果确定业务流程状态为继续执行业务,服务器按照业务唯一标识从预设数据表中筛选目标业务模块的上下游业务关系,得到待调用业务链路,并将执行结果和待调用业务链路发送至终端。
例如,服务器依次执行身份识别服务对应的人脸识别、公安网认证和手机运营商认证之后,得到执行结果为身份识别通过,服务器确定待调用业务链路为信息录取服务,接着,终端发起信息录入请求,服务器执行步骤201至步骤204。服务器还可以确定待调用业务链路为风控审批服务,服务器自动调用审批流程。可以理解的是,服务器将不同业务场景中的相似业务进行组合配置,服务器还可以在调用目标业务流程函数过程中,获取模块执行前时刻与执行后时刻,并根据执行前时刻和执行后时刻的差值,确定目标业务模块的执行时长,以便之后对目标业务模块的优化,也就是服务器执行步骤205。
205、获取执行时长,将目标业务模块调用请求、执行结果和执行时长记录至预设操作日志中。
服务器在目标业务模块执行过程中入参出参异常记录至预设操作日志中,服务器根据执行结果确定目标业务模块调用请求执行失败时,服务器根据执行时长、相关参数和执行结果生成表示该目标业务模块请求完整执行过程的业务日志,并将业务日志按照预设数据格式写入至预设操作日志中。以使得运维人员根据预设操作日志能够获知目标业务模块请求整个执行过程,并可快速地对目标业务模块请求的执行发生错误的问题进行查找和定位,提高了业务维护效率。
206、基于执行时长对目标业务流程函数进行优化处理,得到优化后的业务流程函数,并基于优化后的业务流程函数进行业务处理。
也就是,当执行时长大于预设时长阈值时,服务器对目标业务流程函数进行优化处理,具体的,服务器减少代码文件中变量和/或者函数的长度,得到优化后的业务流程函数,并将优化后的业务流程函数进行重新部署,再次进行业务处理,提高了目标业务流程函数的执行效率。
需要说明的是,在步骤201之前,可选的,服务器通过预设流程控制服务扫描所有已添加注解的业务模块,得到多个预设模块编号;服务器将每个预设模块编号与每个业务模块对应的业务唯一标识映射存储至散列表中。也就是,服务器通过将原逻辑条件判断抽取出来,并将其存储于配置文件、数据库或缓存中;服务器将每个条件分支的代码封装成对应的业务模块,并对每个业务模块设置业务唯一标识,以便于准确定位到该业务模块。例如,业务唯一标识为业务名称;同时服务器确定每个业务模块的入参出参字段、参数格式(例如,必要的字段)和流程流转的条件判断,此外服务器对每个业务模块分配指定的注解@WFTask(taskId=模块编号),并为每个业务模块分配预设流程控制服务调用的业务流程函数,并将业务流程函数的名称配置于预设数据库中。服务器通过构造通用的参数组装与数据变更模块,通过变更参数组装与数据变更逻辑的配置即可变化参数组装的逻辑与变更的数据及变更的逻辑(例如,减少流程的模块、禁用流程的模块或变更模块执行的顺序),并通过增加配置即可增加通用模块,无需新增代码。提升了业务逻辑编写的效率,且更简单更方便的维护。
本发明实施例中,通过根据校验规则集对至少一个业务请求参数信息进行规则校验,提高了业务请求参数的准确性;并按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路,提高了业务代码维护效率,降低了代码量。
上面对本发明实施例中业务调用方法进行了描述,下面对本发明实施例中业务调用装置进行描述,请参阅图3,本发明实施例中业务调用装置的一个实施例包括:
提取模块301,用于获取并记录目标业务模块调用请求,从目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息;
确定模块302,用于通过预设流程控制服务按照业务唯一标识和至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集;
校验模块303,用于根据校验规则集对至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;
执行模块304,用于基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路,并将执行结果和待调用业务链路发送至终端。
进一步地,将待调用业务链路存储于区块链数据库中,具体此处不做限定。
本发明实施例中,通过根据校验规则集对至少一个业务请求参数信息进行规则校验,提高了业务请求参数的准确性;并按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路,提高了业务代码维护效率,降低了代码量。
请参阅图4,本发明实施例中业务调用装置的另一个实施例包括:
提取模块301,用于获取并记录目标业务模块调用请求,从目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息;
确定模块302,用于通过预设流程控制服务按照业务唯一标识和至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集;
校验模块303,用于根据校验规则集对至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;
执行模块304,用于基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路,并将执行结果和待调用业务链路发送至终端。
可选的,提取模块301还可以具体用于:
接收目标业务模块调用请求,生成请求时刻,将目标业务模块调用请求和请求时刻存储至预设数据库中,并设置目标业务模块调用请求的业务状态为正在处理状态;
对目标业务模块调用请求进行参数解析,得到业务唯一标识和至少一个业务请求参数信息。
可选的,确定模块302还可以具体用于:
将业务唯一标识和至少一个业务请求参数信息输入至预设流程控制服务,通过预设流程控制服务检索预设配置数据表,得到检索结果,并判断检索结果是否为空值;
若检索结果为空值,则生成包含目标业务模块调用请求存在异常的提示信息,并将提示信息发送至终端;
若检索结果不为空值,则从检索结果中提取目标业务模块对应的目标模块编码和校验规则集。
可选的,校验模块303还可以具体用于:
按照预设校验优先级从高到低的顺序,依序采用预设校验优先级对应的校验规则集分别对至少一个业务请求参数信息进行规则校验,得到每个业务请求参数信息对应的校验结果;
将至少一个业务请求参数信息和每个业务请求参数信息对应的校验结果存储至预设操作日志表中;
当全部业务请求参数信息校验通过时,按照目标模块编码从散列表中读取目标业务流程函数和业务返回参数信息。
可选的,执行模块304还可以具体用于:
将至少一个业务请求参数信息和业务返回参数信息输入至目标业务流程函数中,并调用目标业务流程函数,得到执行结果,执行结果包括执行成功和执行失败;
当执行结果为执行失败时,基于执行结果确定待调用业务链路为停止执行业务,生成错误提示信息,并将执行结果和错误提示信息发送至终端;
当执行结果为执行成功时,基于执行结果确定业务流程状态为继续执行业务,按照业务唯一标识从预设数据表中筛选目标业务模块的上下游业务关系,得到待调用业务链路,并将执行结果和待调用业务链路发送至终端。
可选的,业务调用装置还包括:
扫描模块305,用于通过预设流程控制服务扫描所有已添加注解的业务模块,得到多个预设模块编号;
存储模块306,用于将每个预设模块编号与每个业务模块对应的业务唯一标识映射存储至散列表中。
可选的,业务调用装置还包括:
记录模块307,用于获取执行时长,将目标业务模块调用请求、执行结果和执行时长记录至预设操作日志中;
优化模块308,用于基于执行时长对目标业务流程函数进行优化处理,得到优化后的业务流程函数,并基于优化后的业务流程函数进行业务处理。
本发明实施例中,通过根据校验规则集对至少一个业务请求参数信息进行规则校验,提高了业务请求参数的准确性;并按照目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;基于至少一个业务请求参数信息和业务返回参数信息执行目标业务流程函数,得到执行结果,按照执行结果确定待调用业务链路,提高了业务代码维护效率,降低了代码量。
上面图3和图4从模块化的角度对本发明实施例中的业务调用装置进行详细描述,下面从硬件处理的角度对本发明实施例中业务调用设备进行详细描述。
图5是本发明实施例提供的一种业务调用设备的结构示意图,该业务调用设备500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessing units,CPU)510(例如,一个或一个以上处理器)和存储器520,一个或一个以上存储应用程序533或数据532的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器520和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对业务调用设备500中的一系列指令操作。更进一步地,处理器510可以设置为与存储介质530通信,在业务调用设备500上执行存储介质530中的一系列指令操作。
业务调用设备500还可以包括一个或一个以上电源540,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口560,和/或,一个或一个以上操作系统531,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图5示出的业务调用设备结构并不构成对业务调用设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述业务调用方法的步骤。
本发明还提供一种业务调用设备,所述业务调用设备包括存储器和处理器,存储器中存储有指令,所述指令被处理器执行时,使得处理器执行上述每个实施例中的所述业务调用方法的步骤。
进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明每个个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等每个种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述每个实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明每个实施例技术方案的精神和范围。

Claims (10)

1.一种业务调用方法,其特征在于,所述业务调用方法包括:
获取并记录目标业务模块调用请求,从所述目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息;
通过预设流程控制服务按照所述业务唯一标识和所述至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集;
根据所述校验规则集对所述至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照所述目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;
基于所述至少一个业务请求参数信息和所述业务返回参数信息执行所述目标业务流程函数,得到执行结果,按照所述执行结果确定待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端。
2.根据权利要求1所述的业务调用方法,其特征在于,所述获取并记录目标业务模块调用请求,从所述目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息,包括:
接收目标业务模块调用请求,生成请求时刻,将所述目标业务模块调用请求和所述请求时刻存储至预设数据库中,并设置目标业务模块调用请求的业务状态为正在处理状态;
对所述目标业务模块调用请求进行参数解析,得到业务唯一标识和至少一个业务请求参数信息。
3.根据权利要求1所述的业务调用方法,其特征在于,所述通过预设流程控制服务按照所述业务唯一标识和所述至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集,包括:
将所述业务唯一标识和所述至少一个业务请求参数信息输入至预设流程控制服务,通过所述预设流程控制服务检索预设配置数据表,得到检索结果,并判断所述检索结果是否为空值;
若所述检索结果为空值,则生成包含目标业务模块调用请求存在异常的提示信息,并将所述提示信息发送至终端;
若所述检索结果不为空值,则从所述检索结果中提取目标业务模块对应的目标模块编码和校验规则集。
4.根据权利要求1所述的业务调用方法,其特征在于,所述根据所述校验规则集对所述至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照所述目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息,包括:
按照预设校验优先级从高到低的顺序,依序采用预设校验优先级对应的校验规则集分别对所述至少一个业务请求参数信息进行规则校验,得到每个业务请求参数信息对应的校验结果;
将所述至少一个业务请求参数信息和每个业务请求参数信息对应的校验结果存储至预设操作日志表中;
当全部业务请求参数信息校验通过时,按照所述目标模块编码从散列表中读取目标业务流程函数和业务返回参数信息。
5.根据权利要求1所述的业务调用方法,其特征在于,所述基于所述至少一个业务请求参数信息和所述业务返回参数信息执行所述目标业务流程函数,得到执行结果,按照所述执行结果确定待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端,包括:
将所述至少一个业务请求参数信息和所述业务返回参数信息输入至所述目标业务流程函数中,并调用所述目标业务流程函数,得到执行结果,所述执行结果包括执行成功和执行失败;
当所述执行结果为执行失败时,基于所述执行结果确定待调用业务链路为停止执行业务,生成错误提示信息,并将所述执行结果和所述错误提示信息发送至终端;
当所述执行结果为执行成功时,基于所述执行结果确定业务流程状态为继续执行业务,按照所述业务唯一标识从预设数据表中筛选目标业务模块的上下游业务关系,得到待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端。
6.根据权利要求1-5中任意一项所述的业务调用方法,其特征在于,在所述获取并记录目标业务模块调用请求,从所述目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息之前,所述业务调用方法还包括:
通过所述预设流程控制服务扫描所有已添加注解的业务模块,得到多个预设模块编号;
将每个预设模块编号与每个业务模块对应的业务唯一标识映射存储至所述散列表中。
7.根据权利要求1-5中任意一项所述的业务调用方法,其特征在于,在所述基于所述至少一个业务请求参数信息和所述业务返回参数信息执行所述目标业务流程函数,得到执行结果,按照所述执行结果确定待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端之后,所述业务调用方法还包括:
获取执行时长,将所述目标业务模块调用请求、所述执行结果和所述执行时长记录至预设操作日志中;
基于所述执行时长对所述目标业务流程函数进行优化处理,得到优化后的业务流程函数,并基于所述优化后的业务流程函数进行业务处理。
8.一种业务调用装置,其特征在于,所述业务调用装置包括:
提取模块,用于获取并记录目标业务模块调用请求,从所述目标业务模块调用请求中提取业务唯一标识和至少一个业务请求参数信息;
确定模块,用于通过预设流程控制服务按照所述业务唯一标识和所述至少一个业务请求参数信息确定目标业务模块对应的目标模块编码和校验规则集;
校验模块,用于根据所述校验规则集对所述至少一个业务请求参数信息进行规则校验,当全部业务请求参数信息校验通过时,按照所述目标模块编码查询散列表,得到目标业务流程函数和业务返回参数信息;
执行模块,用于基于所述至少一个业务请求参数信息和所述业务返回参数信息执行所述目标业务流程函数,得到执行结果,按照所述执行结果确定待调用业务链路,并将所述执行结果和所述待调用业务链路发送至终端。
9.一种业务调用设备,其特征在于,所述业务调用设备包括:存储器和至少一个处理器,所述存储器中存储有指令;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述业务调用设备执行如权利要求1-7中任意一项所述的业务调用方法。
10.一种计算机可读存储介质,其上存储有指令,其特征在于,所述指令被处理器执行时实现如权利要求1-7中任意一项所述的业务调用方法。
CN202011578218.7A 2020-12-28 2020-12-28 业务调用方法、装置、设备及存储介质 Pending CN112527421A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011578218.7A CN112527421A (zh) 2020-12-28 2020-12-28 业务调用方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011578218.7A CN112527421A (zh) 2020-12-28 2020-12-28 业务调用方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112527421A true CN112527421A (zh) 2021-03-19

Family

ID=74976755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011578218.7A Pending CN112527421A (zh) 2020-12-28 2020-12-28 业务调用方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112527421A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113222408A (zh) * 2021-05-12 2021-08-06 康键信息技术(深圳)有限公司 在线问诊业务监控方法、装置、设备及存储介质
CN113239060A (zh) * 2021-05-31 2021-08-10 康键信息技术(深圳)有限公司 数据资源分配处理方法、装置、设备及存储介质
CN114143199A (zh) * 2021-11-15 2022-03-04 江苏有线技术研究院有限公司 宽带接入系统终端配置方法、配置装置、配置设备及存储介质
CN114827228A (zh) * 2022-04-21 2022-07-29 马上消费金融股份有限公司 链路处理方法及装置
CN114978645A (zh) * 2022-05-13 2022-08-30 Oppo广东移动通信有限公司 基于区块链的数据处理方法、装置、服务器及存储介质
CN116155922A (zh) * 2023-04-17 2023-05-23 中国工商银行股份有限公司 会话数据处理方法、装置、系统、电子设备及存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113222408A (zh) * 2021-05-12 2021-08-06 康键信息技术(深圳)有限公司 在线问诊业务监控方法、装置、设备及存储介质
CN113239060A (zh) * 2021-05-31 2021-08-10 康键信息技术(深圳)有限公司 数据资源分配处理方法、装置、设备及存储介质
CN113239060B (zh) * 2021-05-31 2023-09-29 康键信息技术(深圳)有限公司 数据资源分配处理方法、装置、设备及存储介质
CN114143199A (zh) * 2021-11-15 2022-03-04 江苏有线技术研究院有限公司 宽带接入系统终端配置方法、配置装置、配置设备及存储介质
CN114143199B (zh) * 2021-11-15 2023-11-03 江苏有线技术研究院有限公司 宽带接入系统终端配置方法、配置装置、配置设备及存储介质
CN114827228A (zh) * 2022-04-21 2022-07-29 马上消费金融股份有限公司 链路处理方法及装置
CN114827228B (zh) * 2022-04-21 2024-04-09 马上消费金融股份有限公司 链路处理方法及装置
CN114978645A (zh) * 2022-05-13 2022-08-30 Oppo广东移动通信有限公司 基于区块链的数据处理方法、装置、服务器及存储介质
CN116155922A (zh) * 2023-04-17 2023-05-23 中国工商银行股份有限公司 会话数据处理方法、装置、系统、电子设备及存储介质
CN116155922B (zh) * 2023-04-17 2023-07-04 中国工商银行股份有限公司 会话数据处理方法、装置、系统、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN112527421A (zh) 业务调用方法、装置、设备及存储介质
CN112540923B (zh) 接口参数校验与转换方法、装置、设备及存储介质
US10769228B2 (en) Systems and methods for web analytics testing and web development
CN109474578B (zh) 报文消息校验方法、装置、计算机设备和存储介质
WO2022126983A1 (zh) 电子报表文件导出方法、装置、设备及存储介质
CN108628748B (zh) 自动化测试管理方法和自动化测试管理系统
CN111651784A (zh) 日志脱敏方法、装置、设备及计算机可读存储介质
CN112506894A (zh) 基于链路追踪的服务链日志处理方法、装置和计算机设备
CN111813845B (zh) 基于etl任务的增量数据抽取方法、装置、设备及介质
CN111625837B (zh) 识别系统漏洞的方法、装置和服务器
CN116629804B (zh) 一种信访督查跟踪管理系统及管理方法
CN112329043A (zh) 信息加密处理方法、装置、计算机设备及介质
CN112328631A (zh) 一种生产故障分析方法、装置、电子设备及存储介质
CN111064725A (zh) 一种代码零入侵接口校验方法和校验装置
CN115526605A (zh) 基于企业内部控制管理的审批方法及系统
CN115982012A (zh) 一种接口管理能力成熟度的评估模型及方法
CN113918467A (zh) 金融系统测试方法、装置、设备及存储介质
CN116993523A (zh) 配置化对账方法、装置、设备及存储介质
CN112565366B (zh) 分布式文件导入方法、装置、设备及存储介质
CN115205032A (zh) 征信查询方法、装置、设备及存储介质
CN113901839A (zh) 用户视频信息审核方法、装置、设备及存储介质
CN117076546B (zh) 数据处理方法、终端设备及计算机可读存储介质
CN114186971A (zh) 一种业务审核单分配方法、装置、计算机设备及存储介质
CN118586869A (zh) 一种发票处理方法、装置、设备及存储介质
CN117215930A (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