远程调用方法及装置、电子设备、计算机可读存储介质制造方法及图纸

技术编号:37664194 阅读:16 留言:0更新日期:2023-05-26 04:21
本公开提供了一种远程调用方法及装置、电子设备、计算机可读存储介质,该方法包括:获取待发起的远程调用请求的请求参数;从至少一个代理服务端中,确定待使用的目标代理服务端;根据请求参数,生成远程调用请求,并将远程调用请求发送至目标代理服务端;接收目标代理服务端返回的响应参数,其中,响应参数是目标代理服务端响应于远程调用请求将请求参数发送至被调用端之后,由被调用端生成并提供至目标代理服务端的,请求参数是目标代理服务端基于与被调用端之间的专用网络连接通道发送至被调用端的。根据本公开的实施例能够降低远程调用的通信耗时。用的通信耗时。用的通信耗时。

【技术实现步骤摘要】
远程调用方法及装置、电子设备、计算机可读存储介质


[0001]本公开涉及计算机
,特别涉及远程调用方法及装置、电子设备、计算机可读存储介质。

技术介绍

[0002]远程过程调用(RPC,Remote Procedure Call),是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。
[0003]在相关技术中,在实现RPC方案,即实现远程调用时,通常仅关注业务开发上的便捷性。例如,通常会关注于如何通过接口描述语言(IDL,Interface Description Language)对RPC请求的输入参数和输入参数进行统一定义,以生成不同编程语言的软件开发工具包(SDK,Software Development Kit),RPC请求的发起方,即调用端(Caller)和RPC请求的接收方,即被调用端(Callee)之间往往并不需要关注SDK底层如何进行网络通信。
[0004]相关技术中的该种RPC实现方案,即远程调用方法虽然使得Caller和Callee之间可以便捷的进行通信,但是可能存在通信耗时长的问题。

技术实现思路

[0005]本公开提供一种远程调用方法及装置、电子设备、计算机可读存储介质。
[0006]第一方面,本公开提供了一种远程调用方法,应用于调用端,该方法包括:
[0007]获取待发起的远程调用请求的请求参数,其中,所述远程调用请求用于传输所述请求参数至被调用端,所述调用端和所述被调用端所处的地理位置不同;
[0008]从至少一个代理服务端中,确定待使用的目标代理服务端,其中,在所述调用端基于所述至少一个代理服务端分别与所述被调用端进行通信的情况下,所述目标代理服务端为所有代理服务端中通信耗时满足第一预设条件的代理服务端,每一代理服务端与所述被调用端之间基于不同的专用网络连接通道连接;
[0009]根据所述请求参数,生成所述远程调用请求,并将所述远程调用请求发送至所述目标代理服务端;
[0010]接收所述目标代理服务端返回的响应参数,其中,所述响应参数是所述目标代理服务端响应于所述远程调用请求将所述请求参数发送至所述被调用端之后,由所述被调用端生成并提供至所述目标代理服务端的,所述请求参数是所述目标代理服务端基于与所述被调用端之间的专用网络连接通道发送至所述被调用端的。
[0011]第二方面,本公开提供了另一种远程调用方法,应用于目标代理服务端,该方法包括:
[0012]接收调用端发送的远程调用请求,其中,所述远程调用请求用于传输请求参数至被调用端,所述目标代理服务端与所述被调用端之间基于专用网络连接通道连接;
[0013]从所述远程调用请求中获取所述请求参数对应的序列化参数,并将所述序列化参数发送至所述被调用端;
[0014]在接收到所述被调用端提供的、与所述请求参数对应的响应参数的情况下,将所述响应参数提供至所述调用端。
[0015]第三方面,本公开提供了又一种远程调用方法,应用于被调用端,该方法包括:
[0016]接收目标代理服务端发送的序列化参数,其中,所述序列化参数是由所述调用端基于远程调用请求的请求参数生成的;
[0017]对所述序列化参数进行反序列化处理,获得所述请求参数,并根据所述请求参数生成响应参数;
[0018]将所述响应参数提供至所述目标代理服务端,其中,所述目标代理服务端用于将接收到的所述响应参数通过远程调用响应消息的方式提供至所述调用端,所述远程调用响应消息是由所述目标代理服务端通过将序列化响应参数填充为预设远程调用响应请求接口的参数得到的,所述序列化响应参数是由所述目标代理服务端对所述响应参数进行序列化处理后得到的。
[0019]第四方面,本公开提供了一种远程调用装置,应用于调用端,该装置包括:
[0020]获取单元,用于获取待发起的远程调用请求的请求参数,其中,所述远程调用请求用于传输所述请求参数至被调用端,所述调用端和所述被调用端所处的地理位置不同;
[0021]确定单元,用于从至少一个代理服务端中,确定待使用的目标代理服务端,其中,在所述调用端基于所述至少一个代理服务端分别与所述被调用端进行通信的情况下,所述目标代理服务端为所有代理服务端中通信耗时满足第一预设条件的代理服务端,每一代理服务端与所述被调用端之间基于不同的专用网络连接通道连接;
[0022]发送单元,用于根据所述请求参数,生成所述远程调用请求,并将所述远程调用请求发送至所述目标代理服务端;
[0023]接收单元,用于接收所述目标代理服务端返回的响应参数,其中,所述响应参数是所述目标代理服务端响应于所述远程调用请求将所述请求参数发送至所述被调用端之后,由所述被调用端生成并提供至所述目标代理服务端的,所述请求参数是所述目标代理服务端基于与所述被调用端之间的专用网络连接通道发送至所述被调用端的。
[0024]第五方面,本公开提供了另一种远程调用装置,应用于目标代理服务端,该装置包括:
[0025]第一接收单元,用于接收调用端发送的远程调用请求,其中,所述远程调用请求用于传输请求参数至被调用端,所述目标代理服务端所处的机房与所述被调用端所处的机房之间基于专用网络连接线连接;
[0026]参数发送单元,用于从所述远程调用请求中获取所述请求参数对应的序列化参数,并将所述序列化参数发送至所述被调用端;
[0027]第一参数提供单元,用于在接收到所述被调用端提供的、与所述请求参数对应的响应参数的情况下,将所述响应参数提供至所述调用端。
[0028]第六方面,本公开提供了又一种远程调用装置,应用于调用端,该装置包括:
[0029]第二接收单元,用于接收目标代理服务端发送的序列化参数,其中,所述序列化参数是由所述调用端基于远程调用请求的请求参数生成的;
[0030]参数生成单元,用于对所述序列化参数进行反序列化处理,获得所述请求参数,并根据所述请求参数生成响应参数;
[0031]第二参数提供单元,用于将所述响应参数提供至所述目标代理服务端,其中,所述目标代理服务端用于将接收到的所述响应参数通过远程调用响应消息的方式提供至所述调用端,所述远程调用响应消息是由所述目标代理服务端通过将序列化响应参数填充为预设远程调用响应请求接口的参数得到的,所述序列化响应参数是由所述目标代理服务端对所述响应参数进行序列化处理后得到的。
[0032]第七方面,本公开提供了一种电子设备,该电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的一个或多个计算机程序,一个或多个所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述第一方面、第二方面以及第三方面的远程调用方法。
[0033]第八方面,本公开提供了一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序在被处理器执行时实现上述第一方面、第二方面以及第三本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种远程调用方法,其特征在于,应用于调用端,所述方法包括:获取待发起的远程调用请求的请求参数,其中,所述远程调用请求用于传输所述请求参数至被调用端,所述调用端和所述被调用端所处的地理位置不同;从至少一个代理服务端中,确定待使用的目标代理服务端,其中,在所述调用端基于所述至少一个代理服务端分别与所述被调用端进行通信的情况下,所述目标代理服务端为所有代理服务端中通信耗时满足第一预设条件的代理服务端,每一代理服务端与所述被调用端之间基于不同的专用网络连接通道连接;根据所述请求参数,生成所述远程调用请求,并将所述远程调用请求发送至所述目标代理服务端;接收所述目标代理服务端返回的响应参数,其中,所述响应参数是所述目标代理服务端响应于所述远程调用请求将所述请求参数发送至所述被调用端之后,由所述被调用端生成并提供至所述目标代理服务端的,所述请求参数是所述目标代理服务端基于与所述被调用端之间的专用网络连接通道发送至所述被调用端的。2.根据权利要求1所述的方法,其特征在于,所述从至少一个代理服务端中,确定待使用的目标代理服务端,包括:获取与所述至少一个代理服务端对应的至少一个服务地址信息;根据所述至少一个服务地址信息,得到与所述至少一个代理服务端对应的至少一个代理客户端;根据所述至少一个代理客户端,分别发送通信探测请求包至对应的代理服务端,以及,接收所述至少一个代理服务端分别提供的、与所述通信探测请求包对应的通信探测响应包;其中,每一代理服务端用于将接收到的通信探测请求包基于对应的专用网络连接通道传输至所述被调用端,并接收所述被调用端生成并提供的所述通信探测响应包;根据每一通信探测请求包的发送时间和对应通信探测响应包的接收时间,获得与所述至少一个代理服务端对应的至少一个探测通信时长;将所述至少一个探测通信时长中,数值满足第二预设条件的探测通信时长所对应的代理服务端确定为所述目标代理服务端。3.根据权利要求2所述的方法,其特征在于,所述根据所述请求参数,生成所述远程调用请求,并将所述远程调用请求发送至所述目标代理服务端,包括:对所述请求参数进行序列化处理,获得序列化参数;将所述序列化参数填充为预设远程调用请求接口的参数,生成所述远程调用请求;控制所述目标代理服务端对应的代理客户端将所述远程调用请求发送至所述目标代理服务端。4.根据权利要求2所述的方法,其特征在于,在接收到所述响应参数之后,还包括:在满足第三预设条件的情况下,清除与所述目标代理服务端对应的代理客户端。5.一种远程调用方法,其特征在于,应用于目标代理服务端,所述方法包括:接收调用端发送的远程调用请求,其中,所述远程调用请求用于传输请求参数至被调用端,所述目标代理服务端与所述被调用端之间基于专用网络连接通道连接;从所述远程调用请求中获取所述请求参数对应的序列化参数,并将所述序列化参数发送至所述被调用端;
...

【专利技术属性】
技术研发人员:胡权赵国庆曾琳铖曦蒋宁吴海英
申请(专利权)人:马上消费金融股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1