CN113778567A - 服务调用重试方法、装置、设备和存储介质 - Google Patents
服务调用重试方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN113778567A CN113778567A CN202110865282.1A CN202110865282A CN113778567A CN 113778567 A CN113778567 A CN 113778567A CN 202110865282 A CN202110865282 A CN 202110865282A CN 113778567 A CN113778567 A CN 113778567A
- Authority
- CN
- China
- Prior art keywords
- service
- call
- calling
- retry
- target service
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请涉及服务调用技术领域,提供一种服务调用重试方法、装置、设备和存储介质。本申请根据与服务调用端、服务被调用端和目标服务相关的因素确定调用重试时间,提高调用重试时间的合理性。主要包括:向服务被调用端发起针对目标服务的调用请求;若目标服务的调用出错,则基于服务调用端的服务调用重试处理器当前的可用资源和温度,以及目标服务被分配的时间片与目标服务被调度优先级间的比值,以及服务被调用端的网络畅通度,以及服务调用端和/或服务被调用端的网络稳定度,确定针对目标服务的调用重试时间;调用重试时间到达时,再次向服务被调用端发起调用请求。
Description
技术领域
本申请涉及服务调用技术领域,特别是涉及一种服务调用重试方法、装置、计算机设备和存储介质。
背景技术
随着业务的快速发展,业务被拆分成百上千的服务。服务与服务之间相互调用,但是,服务调用有时会出现失败的情况。为了避免服务调用失败带来的影响,通常会在一定时间后进行服务调用重试。服务调用重试中,比较关键的是如何合理地确定服务的调用重试时间;传统方式在确定调用重试时间时,所考虑的因素较少,存在调用重试时间不合理的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种服务调用重试方法、装置、计算机设备和存储介质。
一种服务调用重试方法,应用于服务调用端,所述方法包括:
向服务被调用端发起针对目标服务的调用请求;
若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间;
所述调用重试时间到达时,再次向所述服务被调用端发起所述调用请求。
在其中一个实施例中,
所述服务调用重试处理器当前的可用资源、所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,均与所述调用重试时间呈负相关;
所述服务调用重试处理器当前的温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,均与所述调用重试时间呈正相关。
在其中一个实施例中,所述若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间,包括:
若所述目标服务的调用出错,则基于所述服务调用重试处理器当前的负载与所述服务调用重试处理器的数量的比值,得到衡量所述可用资源大小的负载因子;
将所述负载因子、所述服务调用重试处理器当前的温度、所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值、所述网络畅通度的倒数和所述网络稳定度的倒数输入至预先构建的输入输出正相关函数;
将所述输入输出正相关函数输出的值作为所述调用重试时间。
在其中一个实施例中,所述方法还包括:
确定所述服务被调用端所处的地理区域和所述服务被调用端所用的带宽;
基于所述地理区域和带宽,确定所述网络畅通度。
在其中一个实施例中,所述方法还包括:
根据所述服务调用端和/或所述服务被调用端所处地理区域的网络事件热度和/或天气良好度,确定所述服务调用端和/或所述服务被调用端的网络稳定度。
在其中一个实施例中,所述若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间,包括:
若所述目标服务的调用出错,则获取所述目标服务的调用出错次数;
基于所述调用出错次数,以及所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间。
一种服务调用重试装置,应用于服务调用端,所述装置包括:
调用请求发起模块,用于向服务被调用端发起针对目标服务的调用请求;
调用重试时间确定模块,用于若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间;
调用重试模块,用于所述调用重试时间到达时,再次向所述服务被调用端发起所述调用请求。
在其中一个实施例中,所述服务调用重试处理器当前的可用资源、所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,均与所述调用重试时间呈负相关;
所述服务调用重试处理器当前的温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,均与所述调用重试时间呈正相关。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
上述服务调用重试方法、装置、计算机设备和存储介质,应用于服务调用端,主要包括:向服务被调用端发起针对目标服务的调用请求;若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间;所述调用重试时间到达时,再次向所述服务被调用端发起所述调用请求。本申请中,在服务调用出错后,根据服务调用端、服务被调用端和目标服务这几方面的相关因素(如服务调用端的的服务调用重试处理器当前的可用资源和温度、服务被调用端的网络畅通度、服务调用端和/或服务被调用端的网络稳定度、目标服务被分配的时间片与目标服务被调度优先级间的比值),确定调用重试时间,提高所确定的调用重试时间的合理性。
附图说明
图1为一个实施例中服务调用重试方法的应用环境图;
图2为一个实施例中服务调用重试方法的流程示意图;
图3为一个实施例中服务调用重试方法的流程示意图;
图4为一个实施例中服务调用重试装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
本申请提供的服务调用重试方法,可以应用于如图1所示的应用环境中。其中,发起服务调用的计算机设备可以称为服务调用端(可以用a指代),服务调用端a进行服务调用时,向另一计算机设备发起服务调用,该另一计算机设备可以称为服务被调用端(可以用b指代)。其中,服务调用端a和服务被调用端b各自可以被不同的网络覆盖,两端通过各自的网络进行与服务调用相关的数据传输。
在一个实施例中,如图2所示,提供了一种服务调用重试方法,以该方法应用于图1中的服务调用端a为例进行说明,包括以下步骤:
步骤S201,向服务被调用端发起针对目标服务的调用请求。
步骤S202,若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间。
其中,如果服务调用端a的服务调用重试处理器当前的可用资源较多,该服务调用重试处理器可以在短时间内处理针对目标服务的调用重试任务,针对目标服务的调用重试时间可以设为较短,所述服务调用重试处理器当前的可用资源与针对目标服务的调用重试时间呈负相关。
同样地,服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,也与所述调用重试时间呈负相关。
如果所述服务调用重试处理器当前的温度较高,该服务调用重试处理器不宜在短时间内处理针对目标服务的调用重试任务,针对目标服务的调用重试时间可以设为较长,所述服务调用重试处理器当前的温度与针对目标服务的调用重试时间呈正相关。
其中,所述目标服务被分配的时间片表征该目标服务被允许在处理器运行的时间,例如300ms。服务被调度优先级表征该服务被处理器调度的优先程度,对于一些重要的服务可以设定较高的被调度优先级;服务被调度优先级可以用设定的优先级量值范围的值进行衡量,如优先级量值范围为1至10,值越大,被调度优先级越高;所述目标服务被分配的时间片与目标服务被调度优先级间的比值越高,该目标服务对应的调用重试时间可以设为较长,也即,目标服务被分配的时间片与目标服务被调度优先级间的比值(可以称为时间片因子)与所述调用重试时间呈正相关。
步骤S203,所述调用重试时间到达时,再次向所述服务被调用端发起所述调用请求。
上述服务调用重试方法中,服务调用出错后,根据服务调用端、服务被调用端和目标服务这几方面的相关因素(如服务调用端的的服务调用重试处理器当前的可用资源和温度、服务被调用端的网络畅通度、服务调用端和/或服务被调用端的网络稳定度、目标服务被分配的时间片与目标服务被调度优先级间的比值),确定调用重试时间,提高所确定的调用重试时间的合理性。
在一个实施例中,服务调用端在执行步骤S202时,可以进一步执行如下步骤:若所述目标服务的调用出错,则基于所述服务调用重试处理器当前的负载与所述服务调用重试处理器的数量的比值,得到衡量所述可用资源大小的负载因子;将所述负载因子(用n1指代)、所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值(用n2指代)、所述服务调用重试处理器当前的温度、所述网络畅通度的倒数(用m指代)和所述网络稳定度的倒数(用p指代)输入至预先构建的输入输出正相关函数;将所述输入输出正相关函数输出的值作为所述调用重试时间。
其中,可以用负载因子衡量服务调用重试处理器当前的可用资源大小(即多少),该负载因子为服务调用重试处理器当前的负载与服务调用重试处理器的数量的比值;如果负载因子过高,该服务调用重试处理器没有空闲资源应对目标服务的调用重试任务,也即可用资源过少。
进一步地,为了提高可用资源大小的预估准确性,负载因子可以为:服务调用重试处理器当前的负载/(0.7×服务调用重试处理器的数量)。
示例性地,若输入输出正相关函数是y=kx,k>0;那么,可以将负载因子n1、时间片因子n2、温度、服务被调用端的网络畅通度的倒数m和网络稳定度的倒数p作为输入值x,得到的输出值y为目标服务的调用重试时间。
进一步地,如果服务调用重试处理器当前的温度不宜直接输入上述正相关函数,那么还可以根据服务调用重试处理器当前的温度确定对应的温度因子n3,将该温度因子输入至上述输入输出正相关函数,其中,温度因子n3=服务调用重试处理器当前的温度×100ms/80。
在一个实施例中,服务调用端还可以执行如下步骤:确定所述服务被调用端所处的地理区域和所述服务被调用端所用的带宽;基于所述地理区域和带宽,确定所述网络畅通度。
示例性地,针对地理区域①(该地理区域覆盖一定的范围),服务被调用端a1、a2、a3、a4和a5均位于①内,也即服务调用端a1、a2、a3、a4和a5的来源地均为①。其中,服务被调用端a1至a3使用第一带宽,因此,服务被调用端服务a1至a3的网络畅通度可以是相同的;被调用端a4和a5使用第二带宽,服务被调用端服务a4和a5的网络畅通度可以是相同的。
上述方式中,基于服务被调用端所处的地理区域和服务被调用端所用的带宽确定网络畅通度,可以保证网络畅通度的准确性;并且同一地理区域、使用同一带宽的各服务调用端可以复用同一网络畅通度,避免重复计算,提高调用重试时间的确定效率。
在一个实施例中,服务调用端还可以执行如下步骤:根据所述服务调用端和/或所述服务被调用端所处地理区域的网络事件热度和/或天气良好度,确定所述服务调用端和/或所述服务被调用端的网络稳定度。
其中,网络事件为在网络上讨论的社会事件,如果讨论人数多,该网络事件热度较高,此时对应区域的网络稳定性较差;天气不同,对网络进行服务调用相关数据的传输有影响,若天气良好,网络的数据传输性能较好,网络稳定性较高;例如温度、湿度、风向、风速、云量或降雨量越低,天气越好,网络稳定性高;又例如空气质量越差,天气越差,在家上网人数增加,网络访问量增加,网络稳定性低。
上述网络稳定度可以根据天气良好度和网络事件热度确定,具体确定方式可以为天气良好度×1/网络事件热度。因此,网络稳定度的倒数p=(1/天气良好度)×网络事件热度;为了调整天气良好度和网络事件热度的比重,可以在天气良好度和网络事件热度的对应项引入不同的系数,得到的网络稳定度的倒数p=(20/天气良好度)×(网络事件热度/10)。
上述方式中,根据服务调用端和/或服务被调用端所处地理区域的网络事件热度和/或天气良好度,确定网络稳定度,提高网络稳定度的准确性,提高调用重试时间的合理性。
在一个实施例中,服务调用端可以结合调用出错次数,确定调用重试时间,具体来说:若所述目标服务的调用出错,则获取所述目标服务的调用出错次数;基于所述调用出错次数,以及所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间。
以可用资源大小通过负载因子n1表征、目标服务的时间片因子为n2、服务调用重试处理器的温度因子为n3、网络畅通度的倒数m和网络稳定度的倒数p为例介绍:基于上述服务调用端、目标服务、服务被调用端的相关因素,确定目标服务的调用重试时间=1.1的i次幂×n1×n2×n3×m×p。
上述方式中,结合目标服务的调用出错次数确定调用重试时间,进一步提高调用重试时间的合理性。
为了更好地理解上述方法,以下结合图3详细阐述一个本申请服务调用重试方法的应用实例。
本应用实例中,服务调用端的系统不确定因子包括:负载因子n1、目标服务的时间片因子n2和温度因子n3;服务被调用端因子为网络畅通度的倒数m,主要根据服务调用端所处地理区域确定;外部因子为服务调用端和/或服务被调用端的网络稳定度的倒数p,主要根据天气良好度和网络事件热度确定。
具体来说:
第一、服务调用端的系统不确定因子:
服务调用端的系统负载过高,说明当前处理器没有空闲资源来应对目标服务的调用重试任务,合理的负载因子n1=系统负载/(0.7×处理器数量)。
时间片是每个服务允许进行的时间。对于一些重要服务赋予一定的优先权;假设动态优先级为1-10,值越大,代表优先级越高。合理的时间片因子n2=300ms/优先级大小。
温度也一定程度影响调用重试时间,合理的温度因子n3=当前处理器的温度×100ms/80。
第二、服务被调用端因子:
不同地理区域的网络有差异,参考范围设为1~100;参考值越大,网络越好;若同一地理区域包括不同的带宽,不同带宽对应的网络畅通度不同,因此,处于同一地理区域且适用同一带宽的各服务被调用端的网络畅通度的倒数相同,即m相同。
第三、外部因子:
天气不同,对网络数据传输有影响,参考范围1~20;值越大,天气越好。网络事件热度对网络稳定性有影响,参考范围1~60;值越大,网络稳定性越差。
基于上述各个因子,由于调用重试时间的数学期望是所有可能性的综合值,因此,调用重试时间可以通过如下方式确定:
系统不确定因子n由负载因子n1、时间片因子n2、温度因子n3组成。系统不确定因子为n=n1×n2×n3。其中n1=系统负载/(0.7×处理器数量)、n2=300ms/优先级大小、n3=处理器当前温度×100ms/80。
服务被调用方因子m由来源地、带宽、辐射一定区域组成,m=100/网络畅通度。
外部因子p由天气良好度、网络事件热度组成,p=(20/天气良好度)×(网络事件热度/10)。
则调用重试时间的数学期望公式为:1.1的i次幂×n×m×p;其中i代表调用出错次数。
上述应用实例中,融合全链路的多种因子(服务调用端的系统不确定因子、服务被调用端因子和外部因子),计算合理的调用重试时间,避免盲目重试,引发服务调用端的系统崩溃。
应该理解的是,虽然图1至图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1至图3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种服务调用重试装置,包括:
调用请求发起模块401,用于向服务被调用端发起针对目标服务的调用请求;
调用重试时间确定模块402,用于若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间;
调用重试模块403,用于所述调用重试时间到达时,再次向所述服务被调用端发起所述调用请求。
在其中一个实施例中,所述服务调用重试处理器当前的可用资源、所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,均与所述调用重试时间呈负相关;所述服务调用重试处理器当前的温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,均与所述调用重试时间呈正相关。
在其中一个实施例中,所述调用重试时间确定模块402,还用于若所述目标服务的调用出错,则基于所述服务调用重试处理器当前的负载与所述服务调用重试处理器的数量的比值,得到衡量所述可用资源大小的负载因子;
将所述负载因子、所述服务调用重试处理器当前的温度、所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值、所述网络畅通度的倒数和所述网络稳定度的倒数输入至预先构建的输入输出正相关函数;
将所述输入输出正相关函数输出的值作为所述调用重试时间。
在其中一个实施例中,所述装置还包括网络畅通度确定模块,用于确定所述服务被调用端所处的地理区域和所述服务被调用端所用的带宽;基于所述地理区域和带宽,确定所述网络畅通度。
在其中一个实施例中,所述装置还包括网络稳定度确定模块,用于根据所述服务调用端和/或所述服务被调用端所处地理区域的网络事件热度和/或天气良好度,确定所述服务调用端和/或所述服务被调用端的网络稳定度。
在其中一个实施例中,所述调用重试时间确定模块402,还用于若所述目标服务的调用出错,则获取所述目标服务的调用出错次数;基于所述调用出错次数,以及所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间。
关于服务调用重试装置的具体限定可以参见上文中对于服务调用重试方法的限定,在此不再赘述。上述服务调用重试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储服务调用重试数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种服务调用重试方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述各个方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各个方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上的实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种服务调用重试方法,其特征在于,应用于服务调用端,所述方法包括:
向服务被调用端发起针对目标服务的调用请求;
若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间;
所述调用重试时间到达时,再次向所述服务被调用端发起所述调用请求。
2.根据权利要求1所述的方法,其特征在于,
所述服务调用重试处理器当前的可用资源、所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,均与所述调用重试时间呈负相关;
所述服务调用重试处理器当前的温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,均与所述调用重试时间呈正相关。
3.根据权利要求1或2所述的方法,其特征在于,所述若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间,包括:
若所述目标服务的调用出错,则基于所述服务调用重试处理器当前的负载与所述服务调用重试处理器的数量的比值,得到衡量所述可用资源大小的负载因子;
将所述负载因子、所述服务调用重试处理器当前的温度、所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值、所述网络畅通度的倒数和所述网络稳定度的倒数输入至预先构建的输入输出正相关函数;
将所述输入输出正相关函数输出的值作为所述调用重试时间。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述服务被调用端所处的地理区域和所述服务被调用端所用的带宽;
基于所述地理区域和带宽,确定所述网络畅通度。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述服务调用端和/或所述服务被调用端所处地理区域的网络事件热度和/或天气良好度,确定所述服务调用端和/或所述服务被调用端的网络稳定度。
6.根据权利要求1所述的方法,其特征在于,所述若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间,包括:
若所述目标服务的调用出错,则获取所述目标服务的调用出错次数;
基于所述调用出错次数,以及所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间。
7.一种服务调用重试装置,其特征在于,应用于服务调用端,所述装置包括:
调用请求发起模块,用于向服务被调用端发起针对目标服务的调用请求;
调用重试时间确定模块,用于若所述目标服务的调用出错,则基于所述服务调用端的服务调用重试处理器当前的可用资源和温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,以及所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,确定针对所述目标服务的调用重试时间;
调用重试模块,用于所述调用重试时间到达时,再次向所述服务被调用端发起所述调用请求。
8.根据权利要求7所述的装置,其特征在于,所述服务调用重试处理器当前的可用资源、所述服务被调用端的网络畅通度,以及所述服务调用端和/或所述服务被调用端的网络稳定度,均与所述调用重试时间呈负相关;
所述服务调用重试处理器当前的温度,以及所述目标服务被分配的时间片与所述目标服务被调度优先级间的比值,均与所述调用重试时间呈正相关。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110865282.1A CN113778567B (zh) | 2021-07-29 | 2021-07-29 | 服务调用重试方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110865282.1A CN113778567B (zh) | 2021-07-29 | 2021-07-29 | 服务调用重试方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113778567A true CN113778567A (zh) | 2021-12-10 |
CN113778567B CN113778567B (zh) | 2022-07-12 |
Family
ID=78836454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110865282.1A Active CN113778567B (zh) | 2021-07-29 | 2021-07-29 | 服务调用重试方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113778567B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110377410A (zh) * | 2019-07-16 | 2019-10-25 | 中信百信银行股份有限公司 | 任务调度方法、系统、电子设备及计算机可读存储介质 |
CN110391880A (zh) * | 2019-08-23 | 2019-10-29 | 聚好看科技股份有限公司 | 基于终端-服务器架构的访问请求处理方法和设备 |
CN111258776A (zh) * | 2020-01-09 | 2020-06-09 | 上海钧正网络科技有限公司 | 一种服务远程调用的容灾方法及设备 |
CN111858046A (zh) * | 2020-07-13 | 2020-10-30 | 海尔优家智能科技(北京)有限公司 | 服务请求的处理方法及装置、存储介质、电子装置 |
CN112965823A (zh) * | 2021-03-24 | 2021-06-15 | 百度在线网络技术(北京)有限公司 | 调用请求的控制方法、装置、电子设备和存储介质 |
-
2021
- 2021-07-29 CN CN202110865282.1A patent/CN113778567B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110377410A (zh) * | 2019-07-16 | 2019-10-25 | 中信百信银行股份有限公司 | 任务调度方法、系统、电子设备及计算机可读存储介质 |
CN110391880A (zh) * | 2019-08-23 | 2019-10-29 | 聚好看科技股份有限公司 | 基于终端-服务器架构的访问请求处理方法和设备 |
CN111258776A (zh) * | 2020-01-09 | 2020-06-09 | 上海钧正网络科技有限公司 | 一种服务远程调用的容灾方法及设备 |
CN111858046A (zh) * | 2020-07-13 | 2020-10-30 | 海尔优家智能科技(北京)有限公司 | 服务请求的处理方法及装置、存储介质、电子装置 |
CN112965823A (zh) * | 2021-03-24 | 2021-06-15 | 百度在线网络技术(北京)有限公司 | 调用请求的控制方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113778567B (zh) | 2022-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11010188B1 (en) | Simulated data object storage using on-demand computation of data objects | |
CN111371603B (zh) | 应用于边缘计算的服务实例部署方法和装置 | |
US10652360B2 (en) | Access scheduling method and apparatus for terminal, and computer storage medium | |
EP3758325B1 (en) | Traffic limiting method, node and system | |
CN111817974B (zh) | 基于令牌桶的接口限流方法、装置、系统及可读存储介质 | |
WO2019052225A1 (zh) | 开放平台控制方法、系统、计算机设备和存储介质 | |
CN111225050B (zh) | 云计算资源分配方法及装置 | |
CN110287332B (zh) | 云环境下仿真模型选择方法与装置 | |
WO2022027917A1 (zh) | 图像处理方法、装置、系统、电子设备及可读存储介质 | |
US12020070B2 (en) | Managing computer workloads across distributed computing clusters | |
CN111767142A (zh) | 服务节点的限流阈值设置方法和服务端设备 | |
CN114281263A (zh) | 容器集群管理系统的存储资源处理方法、系统和设备 | |
CN111539683A (zh) | 一种合同签署方法、装置、设备及介质 | |
CN113055199A (zh) | 网关访问方法、装置及网关设备 | |
CN111260253A (zh) | 信息发送方法、装置、计算机设备及存储介质 | |
CN113778567B (zh) | 服务调用重试方法、装置、设备和存储介质 | |
CN112163734B (zh) | 基于云平台整定计算资源动态调度方法及装置 | |
CN114020469A (zh) | 基于边缘节点的多任务学习方法、装置、介质与设备 | |
US20180095440A1 (en) | Non-transitory computer-readable storage medium, activation control method, and activation control device | |
CN109739513B (zh) | 一种多边缘云下服务请求动态调度方法及装置 | |
CN115952003A (zh) | 一种集群服务器负载均衡的方法、装置、设备及存储介质 | |
CN113395342B (zh) | 一种基于负载均衡分配的电网监控系统前置服务调度方法 | |
CN114301922B (zh) | 一种具延迟感知负载平衡的反向代理方法和存储设备 | |
CN114039962A (zh) | 节点选取方法、系统、电子设备及存储介质 | |
CN114489463A (zh) | 动态调整存储卷qos的方法、装置及计算设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |