时延度量方法、装置、计算机设备和存储介质与流程

文档序号:18898682发布日期:2019-10-18 21:37阅读:292来源:国知局
时延度量方法、装置、计算机设备和存储介质与流程

本申请涉及数据处理技术领域,特别是涉及时延度量方法、装置、计算机设备和存储介质。



背景技术:

基于不同服务器之间的数据交互需求,常需要对数据在不同服务器之间的处理过程进行时延度量。时延是指数据从一个服务器传输至另一个服务器时所需要的时间长度。时延包括服务器内部处理时延和服务器之间的通信时延;由于通信时延是基于不同服务器的系统时间计算得到的传输时间长度,通常需要进行修正。

大部分时延度量技术采用软硬件结合的方案。在跨服务器交互系统中,通常将业务数据在各业务服务器的处理流程中记录时间戳,依据时间戳统计业务数据的时延。但是该时延度量技术需要同步各个业务服务器的系统时钟,而同步系统时钟需要专用的硬件设备,由此导致时延度量的成本较高。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种时延度量方法、装置、计算机设备和存储介质。

一种时延度量方法,所述方法包括:

向交互系统中每个服务器发送探测信息,记录发送时间;

接收每个服务器基于探测代理针对探测信息返回的应答信息,记录接收时间;所述应答信息记录了相应服务器接收到所述探测信息的应答时间;

根据所述发送时间、应答时间及所述接收时间确定相应服务器的时间误差;

当多个服务器之间发生数据交互时,确定数据在每个服务器的处理时间,并根据所述时间误差对处理时间进行修正;

基于修正后的处理时间,计算数据在不同服务器之间的处理时延。

在一个实施例中,所述根据所述发送时间、应答时间及所述接收时间确定相应服务器的时间误差包括:

基于所述发送时间和所述应答时间,确定所述服务器的单向上行时长;

根据所述发送时间和所述接收时间,确定所述服务器的单向回路时长;

计算单向上行时长与单向回路时长的时间差,作为所述服务器的时间误差。

在一个实施例中,所述根据所述发送时间和所述接收时间,确定所述服务器的单向回路时长包括:

计算所述接收时间与所述发送时间的差值;

对所述差值进行二分运算,得到所述服务器的单向回路时长。

在一个实施例中,所述交互系统包括入口服务器和出口服务器;所述处理时间包括起始处理时间和结束处理时间;所述当多个服务器之间发生数据交互时,确定数据在每个服务器的处理时间,并根据所述时间误差对处理时间进行修正包括:

根据入口服务器的时间误差对数据在入口服务器的起始处理时间修正;

根据出口服务器的时间误差对数据在出口服务器的结束处理时间修正;

所述基于修正后的处理时间,计算数据在不同服务器之间的处理时延包括:

计算数据在出口服务器的修正后结束处理时间与在入口服务器的修正后起始处理时间的差值;

将所述差值确定为数据在入口服务器和出口服务器之间的上行总时延。

在一个实施例中,所述交互系统包括相邻的上行服务器和下行服务器;所述处理时间包括起始处理时间和结束处理时间;所述当多个服务器之间发生数据交互时,确定数据在每个服务器的处理时间,并根据所述时间误差对处理时间进行修正包括:

根据上行服务器的时间误差对数据在上行服务器的起始处理时间修正;

根据下行服务器的时间误差对数据在下行服务器的结束处理时间行修正;

所述基于修正后的处理时间,计算数据在不同服务器之间的处理时延包括:

计算数据在上行服务器的修正后起始处理时间与在下行服务器的修正后结束处理时间的差值;

将所述差值确定为数据在上行服务器和下行服务器之间的通信时延。

一种时延度量装置,所述装置包括:

信息发送模块,用于向交互系统中每个服务器发送探测信息,记录发送时间;

信息接收模块,用于接收每个服务器基于探测代理针对探测信息返回的应答信息,记录接收时间;所述应答信息记录了相应服务器接收到所述探测信息的应答时间;

时间误差计算模块,用于根据所述发送时间、应答时间及所述接收时间确定相应服务器的时间误差;

处理时间修正模块,用于当多个服务器之间发生数据交互时,确定数据在每个服务器的处理时间,并根据所述时间误差对处理时间进行修正;

处理时延计算模块,用于基于修正后的处理时间,计算数据在不同服务器之间的处理时延。

在一个实施例中,所述时间误差计算模块还用于基于所述发送时间和所述应答时间,确定所述服务器的单向上行时长;根据所述发送时间和所述接收时间,确定所述服务器的单向回路时长;计算单向上行时长与单向回路时长的时间差,作为所述服务器的时间误差。

在一个实施例中,所述时间误差计算模块还用于计算所述接收时间与所述发送时间的差值;对所述差值进行二分运算,得到所述服务器的单向回路时长。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述时延度量方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述时延度量方法的步骤。

上述时延度量方法、装置、计算机设备和存储介质,基于交互系统内设置的多个服务器,时延度量服务器通过向服务器发送探测信息并记录发送时间,接收服务器通过探测代理返回的应答信息并记录接收时间;根据发送时间、接收时间以及应答信息携带的应答时间确定对应服务器的时间误差,通过专用的探测代理监测探测信息并生成应答信息,即接收探测信息的时间和生成应答信息的时间相同,加快了信息的处理过程,由此提高了计算时间误差的效率。进一步,根据服务器对应的时间误差修正数据的处理时间,根据修正的处理时间计算数据在各服务器之间的处理时延,不依赖硬件设备、采用软件技术实现数据在不同服务器之间的时延度量,节约成本且通用性更广。

附图说明

图1为一个实施例中时延度量方法的应用场景图;

图2为一个实施例中时延度量方法的流程示意图;

图3为一个实施例中计算相应服务器时间误差的示意图;

图4为一个实施例中计算数据上行总时延的示意图;

图5为一个实施例中时延度量装置的结构框图;

图6为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的时延度量方法,可以应用于如图1所示的应用环境中。该时延度量方法应用于时延度量系统中。该时延度量系统包括时延度量服务器102和交互系统104。其中,交互系统104包括需要进行通信交互的多个服务器1042,每个服务器1042中集成了探测代理1044。时延度量服务器102与交互系统中每个服务器1042通过网络进行通信。时延度量服务器102与服务器1042分别可以用独立的服务器或者是多个服务器组成的服务器集群来实现。时延度量服务器102用于向服务器1042发送探测信息。服务器1042用于根据服务器提供的功能对数据进行处理,各个服务器1042的功能和作用可以不同,也可以相同,每个服务器1042与交互系统中一个或多个其他服务器1042进行通信交互。探测代理106可以是包括多个静态文件的函数库;探测代理106用于监测时延度量服务器102发送的探测信息并进行响应,将响应的应答信息返回至时延度量服务器102,其中应答信息携带有应答时间。时延度量服务器102根据应答时间、探测信息的发送时间以及应答信息的接收时间计算服务器104的时间误差;当多个服务器1042之间发生数据交互时,时延度量服务器102确定数据在每个服务器1042的处理时间,并根据相应服务器1042的时间误差修正处理时间,从而基于修正后的处理时间计算数据在不同服务器1042之间的处理时延。

在一个实施例中,如图2所示,提供了一种时延度量方方法,以该方法应用于图1中的时延度量服务器为例进行说明,包括以下步骤:

步骤s202,向交互系统中每个服务器发送探测信息,记录发送时间。

其中,交互系统是指在多个服务器内,对数据进行跨服务器处理的系统。探测信息用于确定服务器与时延度量服务器之间的系统时间的时间误差。发送时间是时延度量服务器发送探测信息时的系统时间;系统时间是指根据从服务器的主机板上的实时钟realtimeclock(rtc)芯片所获取的时间/日期数据,并将获取的时间/日期数据换算成距离当日0时0分的记数单位。

具体地,在交互系统中部署有多台服务器和时延度量服务器,时延度量服务器中预先存储有每个服务器对应的服务器地址;服务器标识可以采用数字、字母和字符串中一种或多种表示;服务器地址可以是ip地址和端口号。时延度量服务器根据预先存储的每个服务器的服务器地址,在预设时段内向交互系统中各个服务器发送探测信息,并记录时延度量服务器当前时刻的系统时间,作为发送时间。

在其中一个实施例中,时延度量服务器在预设时段内可以对交互系统中的每个服务器统一发送探测信息,也可以分别对每个服务器发送探测信息。

在其中一个实施例中,时延度量服务器对每个服务器发送探测信息的预设时间可以根据服务器进行个性化设置,即每个服务器可以对应相同的预设时间,也可以对应不同的预设时间。

在其中一个实施例中,在对交互系统中对每个服务器发送探测信息时,可以不需对交互系统内各服务器的系统时间进行同步,即每个服务器的系统时间可以不一致;也可以采用时钟同步技术对每个服务器的系统时间进行同步。时钟同步技术可以是ntp(networktimeprotocol,网络时间协议)、ptp(precisiontimesynchronizationprotocol,精确时间同步协议)等技术。

步骤s204,接收每个服务器基于探测代理对探测信息返回的应答信息,记录接收时间;应答信息记录了相应服务器接收到探测信息的应答时间。

其中,应答信息包括服务器接收到探测信息时的应答时间和服务器的服务器标识。应答时间是服务器接收到探测信息时的系统时间;接收时间是时延度量服务器接收服务器返回的应答信息的系统时间。

具体地,服务器在启动时,加载探测代理对探测信息进行实时探测。当探测代理探测到时延度量服务器发送的探测信息时,通过探测代理接收并生成对应的应答信息;同时探测代理记录当前时刻服务器的系统时间。探测代理在接收到探测信息时立即生成应答信息并返回,同时记录当前时刻服务器的系统时间作为应答时间。由于探测信息的数据包较小,且传输协议的优先级高(探测信息采用udp(userdatagramprotocol,用户数据报协议)协议进行数据传输),因此探测代理在监测到探测信息时会立即生成应答信息并返回至时延度量服务器,使得服务器从接收探测信息至生成应答信息的时间可以忽略不计。

进一步,探测代理将应答信息通过网络传输至时延度量服务器,时延度量服务器接收探测代理的应答信息,并记录当前时刻时延度量服务器的系统时间,作为接收时间。时延度量服务器将该探测信息发送至服务器,服务器响应并返回应答信息的整个回路中所记录的时间与相应服务器对应存储,即时延度量服务器将应答信息携带的应答时间、接收时间、发送时间,以及服务器标识对应存储。

在其中一个实施例中,当接收到探测代理的加载请求时,加载请求用于指示向交互系统中至少一个服务器加载探测代理。当终端检测到需要对交互系统进行时延监控的用户所发起的探测代理的加载请求时,终端将该加载请求发送至对应的服务器,指示服务器加载探测代理。该加载请求携带有服务器标识,用户可以对指定的服务器加载探测代理,也可以对交互系统内所有服务器加载探测代理。服务器接收到该加载请求,开启相应的应用程序加载探测代理。

步骤s206,根据发送时间、应答时间及接收时间确定相应服务器的时间误差。

其中,时间误差是指服务器与时延度量服务器的系统时间的差值。时间误差可以是正数,也可以是负数,也可以是零。

具体地,时延度量服务器根据记录的发送时间、应答时间以及接收时间计算得到对应服务器的时间误差,将计算得到的时间误差和服务器标识关联存储,为后续发送跨服务器数据交互时,计算不同服务器之间的处理时延提供修正依据。

在其中一个实施例中,时延度量服务器通过计算探测信息从发送至服务器的时长;并计算探测信息从发送至服务器,又接收服务器发送的响应信息的回路时长;进而将探测信息的单向时长与二分之一的回路时长进行比对,得到对应服务器的时间误差。

步骤s208,当多个服务器之间发生数据交互时,确定数据在每个服务器的处理时间,并根据时间误差对处理时间进行修正。

具体地,当交互系统内至少两个服务器之间发生数据交互时,记录数据在相应服务器内进行数据处理所需的处理时间,处理时间是指数据在服务器内处理时所对应的当前服务器的系统时间。处理时间包括起始处理时间和结束处理时间,起始时间是数据输入至服务器时的系统时间,结束时间是数据输出服务器时的系统时间。处理时间还包括服务器标识和数据标识。比如,数据id1输入至服务器1时,记录当前时刻的系统时间t1;经过服务器1处理后输出服务器1时,记录当前时刻的系统时间t2;则处理时间可以表示为(id1,1,t1,t2);其中t1为起始处理时间,t2结束处理时间。

基于获取的每个服务器的处理时间,进一步根据该服务器对应的时间误差修正处理时间。可以将处理时间中对应的起始处理和结束处理时间分别与时间误差进行相加或相减,从而得到服务器对应的修正后的处理时间。

在其中一个实施例中,延度量服务器接收计算数据处理时延的请求,该请求携带有数据标识;根据该请求,获取与该数据标识对应的数据在每个服务器的处理时间,并根据服务器对应的时间误差对处理时间进行修正。

步骤s2010,基于修正后的处理时间,计算数据在不同服务器之间的处理时延。

其中,处理时延包括服务器的内部处理时延以及服务器之间的通信时延。内部处理时延是基于同一服务器的系统时间计算得到的,因此不需对其进行修正;而通信时延是跨服务器时,基于不同服务器的系统时间计算得到的,因此需要对其进行修正。

具体地,基于修正后的处理时间,可以计算数据在相邻服务器之间进行数据交互时,产生的相邻服务器之间的通信时延;也可以计算数据在入口服务器和出口服务器之间的上行总时延,此时入口服务器与出口服务器之间可以有多个发生该数据交互的服务器。该计算数据处理时间的请求还可以携带有服务器标识,可以根据服务器标识计算数据在对应服务器与相邻服务器之间的通信时延,也可以根据服务器标识计算数据在对应服务器之间的处理时延。

在上述实施例中,基于交互系统内设置的多个服务器,时延度量服务器通过向服务器发送探测信息并记录发送时间,接收服务器通过探测代理返回的应答信息并记录接收时间;根据发送时间、接收时间以及应答信息携带的应答时间确定对应服务器的时间误差,通过专用的探测代理监测探测信息并生成应答信息,即接收探测信息的时间和生成应答信息的时间相同,加快了信息的处理过程,由此提高了计算时间误差的效率。进一步,根据服务器对应的时间误差修正数据的处理时间,根据修正的处理时间计算数据在各服务器之间的处理时延,不依赖硬件设备、采用软件技术实现数据在不同服务器之间的时延度量,节约成本且通用性更广。

在一个实施例中,根据发送时间、应答时间及接收时间确定相应服务器的时间误差包括:基于发送时间和应答时间,确定服务器的单向上行时长;根据发送时间和接收时间,确定服务器的单向回路时长;计算单向上行时长与单向回路时长的时间差,作为服务器的时间误差。

其中,单向上行时长是指数据从时延度量服务器传输至服务器的传输时间。单向回路时长是指数据从时延度量服务器传输至服务器、又从服务器返回至时延度量服务器的整个回路的传输时间。

具体地,基于记录的探测信息的发送时间,以及应答信息携带的服务器的应答时间,时延度量服务器将应答时间与发送时间相减所得的差值,作为该服务器的单向上行时长。进一步,基于记录的探测信息的发送时间,以及应答信息的接收时间,时延度量服务器确定该服务器的单向回路时长。进一步,计算单向上行时长与单向回路时长的时间差,作为该服务器与时延度量服务器的时间误差。

如图3所示,提供一个计算服务器的时间误差的示意图。从图中可以看出,交互系统包括3个服务器以及一个时延度量服务器。假设探测信息的发送时间为ti,服务器的应答时间为t2,应答信息的接收时间为t3;计算得到单向上行时长为t2-t1;单向回路时长为(t3-t1)/2;则该服务器的时间误差为t2-t1-(t3-t1)/2。

在其中一个实施例中,根据发送时间和接收时间,确定服务器的单向回路时长包括:计算接收时间与发送时间的差值;对所述差值进行二分运算,得到所述服务器的单向回路时长。

在其中一个实施例中,可以将单向回路时长与单向上行时长相减所得的差值,作为该服务器的时间误差。

在本实施例中,根据探测信息的发送时间、应答信息携带的服务器的应答时间以及应答信息的接收时间,计算相应服务器的时间误差,从而将服务器的系统时间换算为以时延度量服务器为标准的系统时间;有效的解决了对于一些对于安全性较高的交互系统,由于在跨服务器发生数据交互时不允许实时同步每个服务器的系统时间,由此导致数据在交互过程中不能监控各个环节的处理时延的问题。本实施例采用纯软件的方式进行时延度量,对交互系统的侵入性更低。

在其中一个实施例中,交互系统包括入口服务器和出口服务器;处理时间包括起始处理时间和结束处理时间;当多个服务器之间发生数据交互时,确定数据在每个服务器的处理时间,并根据时间误差对处理时间进行修正包括:根据入口服务器的时间误差对数据在入口服务器的起始处理时间修正;根据出口服务器的时间误差对数据在出口服务器的结束处理时间修正;所述基于修正后的处理时间,计算数据在不同服务器之间的处理时延包括:计算数据在出口服务器的修正后结束处理时间与在入口服务器的修正后起始处理时间的差值;将所述差值确定为数据在入口服务器和出口服务器之间的上行总时延。

其中,入口服务器是指交互系统对数据进行处理的最开始的服务器;入口服务器可以是交互系统中任意选取的服务器。出口服务器是指交互系统中对数据进行处理后输出处理结果的服务器。

数据在交互处理过程中,在入口服务器和出口服务器之间可以有多个服务器对数据进行数据处理。并且在交互系统中,除了入口服务器、出口服务器以及入口服务器与出口服务器之间的服务器外,还包括其他服务器。上行总时延是数据在入口服务器和出口服务器之间的所有处理时延;该处理时延包括服务器的内部处理时延和不同服务器的通信时延。

具体地,当多个服务器发送数据交互时,时延度量服务器获取每个服务器的处理时间,其中处理时间包括起始处理时间和结束处理时间;时延度量服务器根据计算得到的入口服务器对应的时间误差,根据该时间误差对起始处理时间进行修正,得到修正后的起始处理时间。同理,时延度量服务器根据计算得到的出口服务器对应的时间误差,根据该时间误差对结束处理时间进行修正,得到修正后的结束处理时间。其中,修正方法包括将起始处理时间或结束处理时间分别与相应服务器的时间误差进行相加或相减。

基于修正后的起始处理时间和结束处理时间,时延度量服务器将出口服务器对应的修正后的结束处理时间与入口服务器对应的修正后的起始处理时间相减,将相减所得的差值作为该数据在入口服务器与出口服务器之间的上行总时延。

如图4所示,提供了一个计算数据上行总时延的示意图。例如,数据在入口服务器的起始处理时间为t1,在出口服务器的结束处理时间为t6;时延度量服务器计算得到入口服务器的时间误差为offset1,出口服务器的时间误差为offset6,则该数据的上行总时延为(t6-offset6)-(t1-offset1)。

在本实施例中,当多个服务器之间发生数据交互时,时延度量服务器根据入口服务器对应的时间误差修正数据的起始处理时间;同时根据出口服务器对应的时间误差修正数据的结束处理时间;并计算修正后的结束处理时间与修正后的起始处理时间的差值,得到交互系统从接收数据到对数据处理结束过程中所消耗的上行总时延,时延精度可达到微秒级;通过时延度量服务器预先计算得到的每个服务器的时间误差,以及简便的计算方法计算数据在跨服务器中的上行总时延,提高了时延的计算效率。

在一个实施例中,交互系统包括相邻的上行服务器和下行服务器;处理时间包括起始处理时间和结束处理时间;当多个服务器之间发生数据交互时,确定数据在每个服务器的处理时间,并根据时间误差对处理时间进行修正包括:根据上行服务器的时间误差对数据在上行服务器的起始处理时间修正;根据下行服务器的时间误差对数据在下行服务器的结束处理时间行修正;所述基于修正后的处理时间,计算数据在不同服务器之间的处理时延包括:计算数据在上行服务器的修正后起始处理时间与在下行服务器的修正后结束处理时间的差值;将所述差值确定为数据在上行服务器和下行服务器之间的通信时延。

其中,上行服务器是指在交互系统对数据进行处理的两个相邻服务器中,将前一服务器对数据的输出结果作为当前服务器的输入,即该当前服务器为上行服务器;前一服务器即为下行服务器。

通信时延是数据在相邻服务器之间的传输时长。通信时延即为上行服务器对数据的起始处理时间与下行服务器对数据的结束处理时间的差值。

具体地,当多个服务器发送数据交互时,时延度量服务器获取每个服务器的处理时间,其中处理时间包括起始处理时间和结束处理时间;时延度量服务器根据计算得到的上行服务器对应的时间误差,根据该时间误差对起始处理时间进行修正,得到修正后的起始处理时间。同理,时延度量服务器根据计算得到的下行服务器对应的时间误差,根据该时间误差对结束处理时间进行修正,得到修正后的结束处理时间。其中,修正方法包括将起始处理时间或结束处理时间分别与相应服务器的时间误差进行相加或相减。

基于修正后的起始处理时间和结束处理时间,时延度量服务器将上行服务器对应的修正后的起始处理时间,与下行服务器对应的修正后的结束处理时间相减,将相减所得的差值作为该数据在上行服务器与下行服务器之间的通信时延。例如,数据在上行服务器的起始处理时间为ts,在下行服务器的结束处理时间为tx;时延度量服务器计算得到入口服务器的时间误差为offsets,出口服务器的时间误差为offsetx,则该数据在上行服务器和下服务器之间的通信时延为(ts-offsets)-(tx-offsetx)。

在本实施例中,当多个服务器之间发生数据交互时,时延度量服务器根据服务器对应的时间误差修正数据的起始处理时间;同时根据下行服务器对应的时间误差修正数据的结束处理时间;并计算修正后的起始处理时间与修正后的结束处理时间的差值,得到交互系统在相邻服务器之间的通信时延,通过时延度量服务器预先计算得到的每个服务器的时间误差,可以更快速的计算服务器之间的通信时延。

应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图5所示,提供了一种时延度量装置500,包括:信息发送模块502、信息接收模块504、时间误差计算模块506、处理时间修正模块508和处理时延计算模块510,其中:

信息发送模块502,用于向交互系统中每个服务器发送探测信息,记录发送时间。

信息接收模块504,用于接收每个服务器基于探测代理对探测信息返回的应答信息,记录接收时间;应答信息记录了相应服务器接收到探测信息的应答时间。

时间误差计算模块506,用于根据发送时间、应答时间及接收时间确定相应服务器的时间误差。

处理时间修正模块508,用于当多个服务器之间发生数据交互时,确定数据在每个服务器的处理时间,并根据时间误差对处理时间进行修正。

处理时延计算模块510,用于基于修正后的处理时间,计算数据在不同服务器之间的处理时延。

在一个实施例中,上述时间误差计算模块还用于基于发送时间和应答时间,确定服务器的单向上行时长;根据发送时间和接收时间,确定服务器的单向回路时长;计算单向上行时长与单向回路时长的时间差,作为服务器的时间误差。

在一个实施例中,上述时间误差计算模块还用于计算接收时间与发送时间的差值;对所述差值进行二分运算,得到所述服务器的单向回路时长。

在一个实施例中,交互系统包括入口服务器和出口服务器;处理时间包括起始处理时间和结束处理时间;上述处理时间修正模块还用于根据入口服务器的时间误差对数据在入口服务器的起始处理时间修正;根据出口服务器的时间误差对数据在出口服务器的结束处理时间修正;所述基于修正后的处理时间,计算数据在不同服务器之间的处理时延包括:计算数据在出口服务器的修正后结束处理时间与在入口服务器的修正后起始处理时间的差值;将所述差值确定为数据在入口服务器和出口服务器之间的上行总时延。

在一个实施例中,交互系统包括相邻的上行服务器和下行服务器;处理时间包括起始处理时间和结束处理时间;上述处理时间修正模块还用于根据上行服务器的时间误差对数据在上行服务器的起始处理时间修正;根据下行服务器的时间误差对数据在下行服务器的结束处理时间行修正;所述基于修正后的处理时间,计算数据在不同服务器之间的处理时延包括:计算数据在上行服务器的修正后起始处理时间与在下行服务器的修正后结束处理时间的差值;将所述差值确定为数据在上行服务器和下行服务器之间的通信时延。

在本实施例中,基于交互系统内设置的多个服务器和时延度量服务器,通过时延度量服务器向服务器发送探测信息并记录发送时间,接收服务器通过探测代理返回的应答信息并记录接收时间;根据发送时间、接收时间以及应答信息携带的应答时间确定对应服务器的时间误差,通过专用的探测代理监测探测信息并生成应答信息,即接收探测信息的时间和生成应答信息的时间相同,加快了信息的处理过程,由此提高了计算时间误差的效率。进一步,根据服务器对应的时间误差修正数据的处理时间,根据修正的处理时间计算数据在各服务器之间的处理时延,不需要特定的交互系统,不需要特定的服务器和时延度量服务器,就可以计算数据在交互系统中各环节的处理时延;并且不依赖硬件设备、完全采用软件技术实现时延度量。

关于时延度量装置的具体限定可以参见上文中对于时延度量方法的限定,在此不再赘述。上述时延度量装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储相应服务器的时间误差以及数据在不同服务器之间的处理时延数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种时延度量方法。

本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,其特征在于,处理器执行计算机程序时实现本申请任意一个实施例中提供的时延度量方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现本申请任意一个实施例中提供的时延度量方法的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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