一种基于模板化的双向接口调用系统及方法与流程

文档序号:37520910发布日期:2024-04-01 14:36阅读:12来源:国知局
一种基于模板化的双向接口调用系统及方法与流程

本说明书实施例主要涉及信息,具体为一种基于模板化的双向接口调用系统及方法。


背景技术:

1、随着计算机技术的发展,计算机系统承担的任务越来越多,需要进行的数据处理和网络通信量也越来越大。计算机系统常常面临高负荷运转或者网络堵塞情况。因此,分布式系统逐渐成为各个企业及单位采用的办公或控制系统。分布式系统包括分布于不同位置的多个系统(即主机),每个主机承担独立的任务,从而减少了主机上运行的计算机系统需要处理的事务量,缓解了性能瓶颈问题。同时分布式系统中的主机之间网络路径更加丰富,不存在中心化的通信节点,通信效率也得到了有效的保障。

2、但分布式的系统也带来了新的问题和挑战。不同的系统出于完成不同事务的考虑,采用的数据库结构及参数信息均有所差别,导致系统之间不能直接的进行数据的交换,而是需要先进行接口对接。本地系统在与其他系统(即主机)的接口对接时,如果其他系统是一个新的系统,之前没有对接过,那么现有技术通常采用修改源代码的方式进行接口对接。该种接口对接方式的缺点是:每次都需要开发人员对源代码进行修改,然后重新发布、部署软件,且对接一次新接口就得按照新的接口协议进行开发,每个接口都需要创建对应的数据实体和数据校验方法,操作比较繁琐。为此,需要研究出能够更加高效便捷地实现多系统之间接口对接的技术。


技术实现思路

1、本说明书实施例针对现有技术存在的问题,提出了一种基于模板化的双向接口调用系统及方法,能够高效便捷地实现系统之间的接口对接。

2、在第一方面,本说明书实施例提供了一种基于模板化的双向接口调用系统,包括:

3、模板模块,用于存储对外开放接口模板和对外调用接口模板,所述对外开放接口模板用于记录接口编号及入参列表,所述对外调用接口模板用于记录接口编号及传参列表;所述入参列表及所述传参列表均记录至少一个参数条目;

4、语义分析模块,用于生成开放映射表和调用映射表,所述开放映射表用于记录所述入参列表中参数条目与本地系统参数中本地参数的映射关系,所述调用映射表用于记录传参列表中参数条目与本地系统参数中本地参数的映射关系;

5、接口模块,用于将本地系统的对外开放端口与所述对外开放接口模板绑定,并用于记录与所述对外调用接口模板对应的外部主机的端口地址;

6、且所述接口模块用于接收来自外部主机的调用请求,所述调用请求包括条目参数,所述接口模块根据所述开放映射表将所述调用请求中的条目参数转换为本地系统参数中对应的本地参数,并将转换后的调用请求提交本地系统以获得输出数据;

7、且所述接口模块用于接收本地系统的对外调用请求,所述对外调用请求包括本地参数,所述接口模块根据所述调用映射表将所述对外调用请求中的本地参数转换为传参列表中对应的条目参数,并将转换后的调用请求提交外部主机以获得返回数据。

8、作为优选,所述语义分析模块包括:

9、开放映射表生成单元,用于获取参数条目,并分别计算参数条目与每个本地参数的关联度,且将与参数条目关联度最高的本地参数作为对应参数条目的映射本地参数;

10、调用映射表生成单元,用于获取参数条目,并分别计算参数条目与每个本地参数的关联度,且将与参数条目关联度最高的本地参数作为对应参数条目的映射本地参数。

11、作为优选,所述开放映射表生成单元及所述调用映射表生成单元均包括:

12、关联度计算子单元,用于计算参数条目的参数名与本地参数的本地参数名的相似度并记为s1;且用于计算参数条目的参数说明与本地参数的本地参数说明的相似度并记为s2;且用于判断参数条目的参数数据类型与本地参数的本地参数数据类型是否相同且结果记为s3,若参数数据类型与本地参数数据类型相同则s3=1,若参数数据类型与本地参数数据类型不相同则s3=0;且用于计算参数条目与本地参数的关联度w=s3*(k1*s1+k2*s2),其中k1和k2为预设权重系数。

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、计算参数条目的参数名与本地参数的本地参数名的相似度并记为s1;

38、计算参数条目的参数说明与本地参数的本地参数说明的相似度并记为s2;

39、判断参数条目的参数数据类型与本地参数的本地参数数据类型是否相同且结果记为s3,若参数数据类型与本地参数数据类型相同则s3=1,若参数数据类型与本地参数数据类型不相同则s3=0;

40、计算参数条目与本地参数的关联度w=s3*(k1*s1+k2*s2),其中k1和k2为预设权重系数。

41、作为优选,所述双向接口调用方法还包括以下步骤:

42、通过第一定时器设置单元注册与所述对外开放接口模板对应的第一定时器,所述第一定时器在接收到调用请求后启动,且所述第一定时器设有第一目标定时值;

43、通过第一异常信号产生单元在所述第一定时器达到第一目标定时值时产生第一异常信号;

44、通过第一触发器设置单元注册与所述对外开放接口模板对应的第一触发器,且所述第一触发器在接收到输出数据后启动;

45、通过第一定时器删除单元在所述第一触发器启动后或在所述第一异常信号产生单元产生第一异常信号后将所述第一定时器删除;

46、通过第一触发器删除单元在所述第一定时器删除后将所述第一触发器删除;

47、通过入参列表内容删除单元在所述第一触发器删除后将入参列表中的内容删除;

48、所述第一定时器设置单元在入参列表中内容删除后注册所述第一定时器,所述第一触发器设置单元在入参列表中内容删除后注册所述第一触发器。

49、作为优选,所述双向接口调用方法还包括以下步骤:

50、通过第二定时器设置单元注册与所述对外调用接口模板对应的第二定时器,所述第二定时器在接收到对外调用请求后启动,且所述第二定时器设有第二目标定时值;

51、通过第二异常信号产生单元在所述第二定时器达到第二目标定时值时产生第二异常信号;

52、通过第二触发器设置单元注册与所述对外调用接口模板对应的第二触发器,且所述第二触发器在接收到返回数据后启动;

53、通过第二定时器删除单元在所述第二触发器启动后或在所述第二异常信号产生单元产生第二异常信号后将所述第二定时器删除;

54、通过第二触发器删除单元在所述第二定时器删除后将所述第二触发器删除;

55、通过传参列表内容删除单元在所述第二触发器删除后将传参列表中的内容删除;

56、所述第二定时器设置单元在传参列表中内容删除后注册所述第二定时器,所述第二触发器设置单元在传参列表中内容删除后注册所述第二触发器。

57、有益效果

58、本说明书实施例的双向接口调用系统及方法,在系统之间直接建立双向的接口调用通道,通过模板模块存储对外开放接口模板和对外调用接口模板,实现异构系统之间的参数转换,借助语义分析模块能够自动实现参数的映射,减少人工的工作量,进而提高系统之间接口调用的效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1