CN115208936A - 远程调用方法、系统、装置、电子设备和存储介质 - Google Patents

远程调用方法、系统、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN115208936A
CN115208936A CN202210588171.5A CN202210588171A CN115208936A CN 115208936 A CN115208936 A CN 115208936A CN 202210588171 A CN202210588171 A CN 202210588171A CN 115208936 A CN115208936 A CN 115208936A
Authority
CN
China
Prior art keywords
call
calling
return value
return
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
CN202210588171.5A
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.)
Ruiling Wireless Co ltd
Original Assignee
Ruiling Wireless 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 Ruiling Wireless Co ltd filed Critical Ruiling Wireless Co ltd
Priority to CN202210588171.5A priority Critical patent/CN115208936A/zh
Publication of CN115208936A publication Critical patent/CN115208936A/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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • G06F9/548Object oriented; Remote method invocation [RMI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请涉及一种远程调用方法、系统、装置、电子设备和存储介质,应用于通信技术领域,其中,方法包括:向调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;循环执行上述步骤,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值。以解决现有技术中,调用发起端需要等待对端返回值后,才会进行下次调用,导致了等待过程时间的浪费,增加了过程的执行时长的问题。

Description

远程调用方法、系统、装置、电子设备和存储介质
技术领域
本申请涉及通信技术领域,尤其涉及一种远程调用方法、系统、装置、电子设备和存储介质。
背景技术
同步远程调用是面向服务架构中的基础技术,本地过程通过同步远程调用,可以调用远端提供的服务函数。通常,同步远程调用是指计算机A上的过程,调用另外一台计算机B上的过程,其中计算机A上的调用过程被挂起,而计算机B上执的被调用过程开始执行,当值返回给计算机A时,计算机A的过程继续行。
相关技术中,在进行同步远程调用时,过程往往需要等待对端返回后,调用才会结束。但是,通常调用发起端在第二次调用时,不需要第一次对端需要返回的值作为入参进行调用,而调用发起端需要等待对端返回值后,才会进行下次调用,导致了等待过程时间的浪费,增加了过程的执行时长。
发明内容
本申请提供了一种远程调用方法、系统、装置、电子设备和存储介质,用以解决现有技术中,调用发起端需要等待对端返回值后,才会进行下次调用,导致了等待过程时间的浪费,增加了过程的执行时长的问题。
第一方面,本申请实施例提供了一种远程调用方法,应用于调用发起端,所述方法包括:
向调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;
在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;
循环执行上述步骤,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值。
可选的,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值,包括:
向所述调用响应端发送调用返回请求,接收所述调用响应端基于所述调用返回请求发送的目标返回值;所述调用响应端满足调用返回条件包括所述调用响应端接收到所述调用返回请求。
可选的,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值,包括:
在所述调用响应端存储的返回值的个数达到预设阈值时,接收所述调用响应端发送的目标返回值;所述调用响应端满足调用返回条件包括所述调用响应端存储的返回值的个数达到预设阈值。
第二方面,本申请实施例提供了一种远程调用方法,应用于调用响应端,所述方法包括:
接收调用发起端发送的第一调用请求,所述第一调用请求用于调用第一返回值;
在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求;
循环执行上述步骤并存储返回值,当满足调用返回条件时,向所述调用发起端发送目标返回值。
可选的,当满足调用返回条件时,向所述调用发起端发送目标返回值,包括:
接收所述调用发起端发送的调用返回请求,基于所述调用返回请求向所述调用发起端发送目标返回值;所述满足调用返回条件包括接收到所述调用返回请求。
可选的,当满足调用返回条件时,向所述调用发起端发送目标返回值,包括:
在存储的返回值的个数达到预设阈值时,向所述调用发起端发送目标返回值;所述满足调用返回条件包括存储的返回值的个数达到预设阈值。
第三方面,本申请实施例提供了一种远程调用系统,包括:调用发起端和调用响应端;
所述调用发起端,用于向所述调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;并循环执行上述步骤;
所述调用响应端,用于接收所述调用发起端发送的第一调用请求;在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求;循环执行上述步骤并存储返回值,当满足调用返回条件时,向所述调用发起端发送目标返回值;
所述调用发起端,还用于接收所述调用响应端发送的目标返回值。第四方面,本申请实施例提供了一种远程调用装置,包括:
第一发送模块,用于向调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;
第二发送模块,用于在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;
第一接收模块,用于循环执行上述步骤,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值。
第五方面,本申请实施例提供了一种远程调用装置,包括:
第二接收模块,用于接收调用发起端发送的第一调用请求,所述第一调用请求用于调用第一返回值;
第三接收模块,用于在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求;
第三发送模块,用于循环执行上述步骤并存储返回值,当满足调用返回条件时,向所述调用发起端发送目标返回值。
第六方面,本申请实施例提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中所存储的程序,实现第一方面或第二方面所述的远程调用方法。
第七方面,本申请实施例提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现第一方面或第二方面所述的远程调用方法。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:本申请实施例提供的该方法,向调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;循环执行上述步骤,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值。如此,在确定第二调用请求不依赖于所述第一返回值时,对于调用发起端无需等待第一返回值,能够在接收到第一返回值之前,向调用响应端发送第二调用请求,避免了调用发起端发起下一次调用的等待时间的浪费,缩短了调用过程的执行时长。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的远程调用方法的流程图;
图2为本申请另一实施例提供的远程调用方法的流程图;
图3为本申请一实施例提供的远程调用方法的交互过程的流程图;
图4为本申请另一实施例提供的远程调用方法的交互过程的流程图;
图5为本申请一实施例提供的远程调用系统的结构图;
图6为本申请一实施例提供的远程调用装置的结构图;
图7为本申请一实施例提供的远程调用装置的结构图;
图8为本申请一实施例提供的电子设备的结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
C++11中的std::future是一个模板类。std::future提供了一种用于访问异步操作结果的机制。std::future所引用的共享状态不能与任何其它异步返回的对象共享。一个future是一个对象,它可以从某个提供者的对象或函数中检索值,如果在不同的线程中,则它可以正确地同步此访问。
事件通知是特殊类型的数据库对象,用于将有关服务器和数据库事件的信息发送到Service Broker服务。
本申请一实施例中提供了一种远程调用方法,该方法可以应用于任意一种形式的电子设备中,如调用发起端的终端和服务器中。如图1所示,该远程调用方法,包括:
步骤101、向调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值。
一些实施例中,在调用发起端和调用响应端建立连接之后,在需要进行远程调用时,调用发起端便会向调用响应端发送调用请求,以调用调用响应端的返回值。
步骤102、在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求。
一些实施例中,第二调用请求不依赖于所述第一返回值的情况,可以是第一返回值不需要作为第二调用请求的入参,或者,第二调用请求为调用发起端发起的连续多次调用中的一次。
对于每次调用发起后,调用发起端在进行下次调用时,可能并不需要使用前次的返回值,从而可以直接发起下一次的调用请求,即第二调用请求。
具体的,在第二调用请求发起前,先判断第二调用请求是否依赖于第一返回值,在其需要第一返回值时,该调用响应端将第一调用请求得到的第一返回值发送至调用发送端;在其不需要第一返回值时,在其返回第一返回值之前,可以直接发起第二调用请求,无需等到第一返回值的返回。
其中,第二调用请求为在第一调用请求发出后的发起的调用请求。
进一步的,对于发起的第二调用请求是否依赖于所述第一返回值,可以通过第二调用请求采用的调用函数进行判断,通常采用的调用函数不同。
具体的,通过判断调用函数是否为预设调用函数,若是,确定第二调用请求不依赖于所述第一返回值。其中,预设调用函数可以但不限于为C++中的模板类std::future。
一些实施例中,在第二调用请求不依赖于所述第一返回值,便可以无需等待第一返回值的返回,在接收到第一返回值之前,便发起第二调用请求,从而减少等待第一返回值返回的时间。
步骤103、循环执行上述步骤101和步骤102,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值。
其中,该目标返回值中可以包括第一返回值。
可以理解的是,调用返回请求可以是调用前一次调用时得到的调用返回值的请求,也可以是前N(N为大于1的整数)次调用时得到的返回值的请求。相应的,目标返回值可以是调用前一次调用时得到的调用返回值,也可以是前N次调用时得到的返回值。
一些实施例中,调用响应端满足调用返回条件可以根据实际情况进行设置,具体以以下两种方式进行具体说明。
第一种,可以是向所述调用响应端发送调用返回请求,接收所述调用响应端基于所述调用返回请求发送的目标返回值;所述调用响应端满足调用返回条件包括所述调用响应端接收到所述调用返回请求。
调用发起端在需要在前调用的目标返回值时,通过调用发起端向调用接收端发送调用返回请求,以使该调用响应端在接收到返回值请求后,将存储的目标返回值发送至调用发起端,从而接收到目标返回值。
第二种,可以是在所述调用响应端存储的返回值的个数达到预设阈值时,接收所述调用响应端发送的目标返回值;所述调用响应端满足调用返回条件包括所述调用响应端存储的返回值的个数达到预设阈值。
基于主动和被动两种方式,触发调用响应端将目标返回值发送至调用发起端,使得调用发起端接收到该目标返回值,从而完成远程调用。
基于同一构思,本申请实施例中提供了一种远程调用方法,该装置的具体实施可参见上述方法实施例部分的描述,重复之处不再赘述。该方法可以应用于任意一种形式的电子设备中,如调用响应端的终端和服务器中。如图2所示,该远程调用方法,包括:
步骤201、接收调用发起端发送的第一调用请求,所述第一调用请求用于调用第一返回值。
一些实施例中,调用响应端与调用发起端建立连接后,便可以由调用发起端向调用响应端发送第一调用请求,从而由调用响应端获取到该第一调用请求。
在一个可选实施例中,所述接收调用发起端发送的第一调用请求之前,还包括:
获取调用发起端发送的连接请求,所述连接请求中包括存储返回值数量的预设阈值;基于所述连接请求与所述调用发起端建立连接,并存储所述预设阈值。
调用发起端与调用响应端建立连接的方式有多种,例如,由调用发起端向调用响应端发送连接请求,其连接请求中包括调用响应端的设备标识,从而能够将该连接请求发送至调用响应端,进而完成二者的连接。进一步的,在连接请求中还包括存储返回值数量的预设阈值,调用响应端通过存储该预设阈值,在存储的返回值数量大搞概预设阈值后,便触发相关操作,例如将存储的返回值发送至调用发起端。
步骤202、在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求。
一些实施例中,调用响应端在获取到第一调用请求后,先判断在发送所述第一返回值之前,第二调用请求是否依赖于所述第一返回值,若不依赖,发送所述第一返回值之前,接收调用发起端发送的第二调用请求。
可选的,对于调用发起端的调用可能不止一次,因此,可能需要循环执行上述步骤201和步骤202。
步骤203、循环执行上述步骤201和步骤202,并存储返回值。
其中,存储的返回值包括循环执行上述步骤中产生的多个返回值。
步骤204、当满足调用返回条件时,向所述调用发起端发送目标返回值。
具体的,调用响应端满足调用返回条件并发送目标返回值的方式有多种,具体可以参见上述调用发起端侧的相关实施例,相同部分此处不再赘述。
一些实施例中,在第一返回值不需要立即返回时,可以先将该第一返回值存储,以在调用发起端后续需要使用时,将第一返回值返回。
在一个可选实施例中,所述存储所述第一返回值之后,还包括:
统计存储的所述第一返回值的数量值;在所述数量值达到预设阈值时,将存储的所述第一返回值发送至所述调用发起端。
一些实施例中,在调用发起端与调用响应端建立连接时,约定了调用响应端存储的返回值数据的最大值,即预设阈值,因此,调用响应端通统计返回值的数量,在存储的返回值的数量值达到预设阈值时,将存储的返回值发送至调用发起端。
在一个具体实施例中,在远程客户端程序(即上述的调用发起端)进行同步调用时,很多时候远程客户端程序不需要马上使用同步调用的返回值,在这种情况下程序不需要挂起等待这个返回值,而可以继续运行直到要使用这个返回值,其逻辑类似于C++中的模板类std::future;同理,在在远程客户端程序进行连续多次同步调用时,程序不需要等待每一个同步调用结束,而是可以继续运行直到某一个同步调用的返回值需要被使用时。
相应的,参见图3,远程调用服务端程序(相当于上述的调用响应端)不需要立即对远程调用客户端的调用进行返回,而是可以当缓存的远程返回值数量达到一定阈值(回路聚合阈值)之后一次性返回给远程调用客户端;或者,参见图4,缓存到客户端发来返回值请求时,将远程返回值一次性返回给远程调用客户端。其中,在图3和图4中,R1、R2和R3为在不同的调用过程中需要返回的返回值。
在远程服务连接建立时,远程客户端程序可以和远程服务端程序协商回路聚合阈值。远程调用服务端程序可以用事件通知的方式,将其缓存的远程返回值发送给远程调用客户端程序。远程调用客户端需要在远程服务连接建立时向远程调用服务程序订阅这一事件。
本申请的远程调用方法,基于变量在使用时才需要被赋值的原理,通过聚合远程同步返回值,减少远程调用程序的执行时间,并减少网络中小数据包的数量。通过减少远程调用客户端程序在连续同步调用中的等待返回值的次数,缩短程序的执行时间,提高程序执行效率。并且,通过将远程调用服务端程序的多次同步调用返回,合并为一次,减少以太网中小数据包的数量,提高网络效率。
基于同一构思,本申请实施例中提供了一种远程调用系统,该系统的具体实施可参见方法实施例部分的描述,重复之处不再赘述,如图5所示,该系统主要包括:调用发起501和调用响应端502;
所述调用发起端,用于向所述调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;并循环执行上述步骤;
所述调用响应端,用于接收所述调用发起端发送的第一调用请求;在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求;循环执行上述步骤并存储返回值,当满足调用返回条件时,向所述调用发起端发送目标返回值;
所述调用发起端,还用于接收所述调用响应端发送的目标返回值。
基于同一构思,本申请实施例中提供了一种远程调用装置,该装置的具体实施可参见方法实施例部分的描述,重复之处不再赘述,如图6所示,该装置主要包括:
第一发送模块601,用于向调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;
第二发送模块602,用于在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;
第一接收模块603,用于循环执行上述步骤,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值。
基于同一构思,本申请实施例中提供了一种远程调用装置,该装置的具体实施可参见方法实施例部分的描述,重复之处不再赘述,如图7所示,该装置主要包括:
第二接收模块701,用于接收调用发起端发送的第一调用请求,所述第一调用请求用于调用第一返回值;
第三接收模块702,用于在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求;
第三发送模块703,用于循环执行上述步骤并存储返回值,当满足调用返回条件时,向所述调用发起端发送目标返回值。
基于同一构思,本申请实施例中还提供了一种电子设备,如图8所示,该电子设备主要包括:处理器801、存储器802和通信总线803,其中,处理器801和存储器802通过通信总线803完成相互间的通信。其中,存储器802中存储有可被处理器801执行的过程,处理器801执行存储器802中存储的过程,实现如下步骤:
向调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;
在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;
循环执行上述步骤,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值。或,
接收调用发起端发送的第一调用请求,所述第一调用请求用于调用第一返回值;
在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求;
循环执行上述步骤并存储返回值,当满足调用返回条件时,向所述调用发起端发送目标返回值。
上述电子设备中提到的通信总线803可以时外设部件互连标准(PeripheralComponent Interconnect,简称PCI)总线或扩展工业标准结构(Extended IndustryStandard Architecture,简称EISA)总线等。该通信总线803可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器802可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器801的存储装置。
上述的处理器801可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等,还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例提供的电子设备,具体可以为能够实现通信功能的模组或包含该模组的终端设备等,该终端设备可以为移动终端或智能终端。移动终端具体可以为手机、平板电脑、笔记本电脑等中的至少一种;智能终端具体可以是智能汽车、智能手表、共享单车、智能柜等含有无线通信模组的终端;模组具体可以为无线通信模组,例如2G通信模组、3G通信模组、4G通信模组、5G通信模组、NB-IOT通信模组等中的任意一种。
在本申请的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述实施例中所描述的远程调用方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、微波等)方式向另外一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如软盘、硬盘、磁带等)、光介质(例如DVD)或者半导体介质(例如固态硬盘)等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

Claims (11)

1.一种远程调用方法,应用于调用发起端,其特征在于,所述方法包括:
向调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;
在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;
循环执行上述步骤,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值。
2.根据权利要求1所述的远程调用方法,其特征在于,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值,包括:
向所述调用响应端发送调用返回请求,接收所述调用响应端基于所述调用返回请求发送的目标返回值;所述调用响应端满足调用返回条件包括所述调用响应端接收到所述调用返回请求。
3.根据权利要求1所述的远程调用方法,其特征在于,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值,包括:
在所述调用响应端存储的返回值的个数达到预设阈值时,接收所述调用响应端发送的目标返回值;所述调用响应端满足调用返回条件包括所述调用响应端存储的返回值的个数达到预设阈值。
4.一种远程调用方法,应用于调用响应端,其特征在于,所述方法包括:
接收调用发起端发送的第一调用请求,所述第一调用请求用于调用第一返回值;
在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求;
循环执行上述步骤并存储返回值,当满足调用返回条件时,向所述调用发起端发送目标返回值。
5.根据权利要求4所述的远程调用方法,其特征在于,当满足调用返回条件时,向所述调用发起端发送目标返回值,包括:
接收所述调用发起端发送的调用返回请求,基于所述调用返回请求向所述调用发起端发送目标返回值;所述满足调用返回条件包括接收到所述调用返回请求。
6.根据权利要求4所述的远程调用方法,其特征在于,当满足调用返回条件时,向所述调用发起端发送目标返回值,包括:
在存储的返回值的个数达到预设阈值时,向所述调用发起端发送目标返回值;所述满足调用返回条件包括存储的返回值的个数达到预设阈值。
7.一种远程调用装置,其特征在于,包括:
第一发送模块,用于向调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;
第二发送模块,用于在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;
第一接收模块,用于循环执行上述步骤,当所述调用响应端满足调用返回条件时,接收所述调用响应端发送的目标返回值。
8.一种远程调用装置,其特征在于,包括:
第二接收模块,用于接收调用发起端发送的第一调用请求,所述第一调用请求用于调用第一返回值;
第三接收模块,用于在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求;
第三发送模块,用于循环执行上述步骤并存储返回值,当满足调用返回条件时,向所述调用发起端发送目标返回值。
9.一种远程调用系统,其特征在于,包括调用发起端和调用响应端;
所述调用发起端,用于向所述调用响应端发送第一调用请求,所述第一调用请求用于调用第一返回值;在第二调用请求不依赖于所述第一返回值时,在接收到所述第一返回值之前,向所述调用响应端发送第二调用请求;并循环执行上述步骤;
所述调用响应端,用于接收所述调用发起端发送的第一调用请求;在第二调用请求不依赖于所述第一返回值时,在发送所述第一返回值之前,接收所述调用发起端发送的第二调用请求;循环执行上述步骤并存储返回值,当满足调用返回条件时,向所述调用发起端发送目标返回值;
所述调用发起端,还用于接收所述调用响应端发送的目标返回值。
10.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中所存储的程序,实现权利要求1-3任一项所述的远程调用方法或4-6任一项所述的远程调用方法。
11.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-3任一项所述的远程调用方法或4-6任一项所述的远程调用方法。
CN202210588171.5A 2022-05-26 2022-05-26 远程调用方法、系统、装置、电子设备和存储介质 Pending CN115208936A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210588171.5A CN115208936A (zh) 2022-05-26 2022-05-26 远程调用方法、系统、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210588171.5A CN115208936A (zh) 2022-05-26 2022-05-26 远程调用方法、系统、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN115208936A true CN115208936A (zh) 2022-10-18

Family

ID=83575477

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210588171.5A Pending CN115208936A (zh) 2022-05-26 2022-05-26 远程调用方法、系统、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN115208936A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016192556A1 (zh) * 2015-05-29 2016-12-08 北京金山安全软件有限公司 接口调用方法、装置及终端
CN109254854A (zh) * 2018-08-15 2019-01-22 中国平安人寿保险股份有限公司 异步调用方法、计算机装置及存储介质
CN111277599A (zh) * 2020-01-21 2020-06-12 浙江大华技术股份有限公司 一种远程调用处理方法及装置
CN111913815A (zh) * 2020-07-12 2020-11-10 中信银行股份有限公司 调用请求的处理方法、装置、电子设备及可读存储介质
CN113419876A (zh) * 2021-06-30 2021-09-21 广州华多网络科技有限公司 远程接口代理调用方法、装置以及计算机设备、存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016192556A1 (zh) * 2015-05-29 2016-12-08 北京金山安全软件有限公司 接口调用方法、装置及终端
CN109254854A (zh) * 2018-08-15 2019-01-22 中国平安人寿保险股份有限公司 异步调用方法、计算机装置及存储介质
CN111277599A (zh) * 2020-01-21 2020-06-12 浙江大华技术股份有限公司 一种远程调用处理方法及装置
CN111913815A (zh) * 2020-07-12 2020-11-10 中信银行股份有限公司 调用请求的处理方法、装置、电子设备及可读存储介质
CN113419876A (zh) * 2021-06-30 2021-09-21 广州华多网络科技有限公司 远程接口代理调用方法、装置以及计算机设备、存储介质

Similar Documents

Publication Publication Date Title
CN108897854B (zh) 一种超时任务的监控方法和装置
CN109933439B (zh) 消息传输方法、装置、计算机设备和存储介质
CN111258723B (zh) 分布式系统的事务处理方法、装置、系统、介质及设备
WO2020168933A1 (zh) 一种网络请求的处理方法、装置、终端及存储介质
CN110275790A (zh) 应用程序中的进程间通信同步回调方法、系统及相关设备
CN109271259B (zh) 企业服务总线系统、数据处理方法、终端及存储介质
CN110008173A (zh) 一种数据存储的方法及装置
CN114090623A (zh) 一种缓存资源的创建方法、装置、电子设备及存储介质
CN108366098B (zh) 一种网络节点的数据交互方法及装置
CN111831461A (zh) 一种处理业务流程的方法和装置
CN110519388B (zh) 区块链请求的处理方法、装置、电子设备及可读存储介质
JP2017063421A (ja) 効率的な呼処理のためのシステムおよび方法
CN114116149A (zh) 一种任务调度方法、装置、设备及介质
CN111200651A (zh) 定时调用微服务的方法、系统、设备和介质
CN114327710A (zh) 一种函数管理方法、管理装置、终端设备及可读存储介质
WO2023231357A1 (zh) 远程调用方法、系统、装置、电子设备和存储介质
CN112905273A (zh) 一种服务调用方法和装置
CN113742389A (zh) 一种业务处理方法和装置
CN115208936A (zh) 远程调用方法、系统、装置、电子设备和存储介质
CN117056258A (zh) 一种数据传输方法、装置、设备及存储介质
WO2019201111A1 (zh) 信息处理方法、装置、设备及计算机可读存储介质
CN110784369A (zh) 检测长连接的方法、服务器、终端及存储介质
CN113760487B (zh) 一种业务处理方法和装置
CN112306791B (zh) 一种性能监控的方法和装置
CN114374657A (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