CN108737293B - 处理请求的方法和装置 - Google Patents

处理请求的方法和装置 Download PDF

Info

Publication number
CN108737293B
CN108737293B CN201710244046.1A CN201710244046A CN108737293B CN 108737293 B CN108737293 B CN 108737293B CN 201710244046 A CN201710244046 A CN 201710244046A CN 108737293 B CN108737293 B CN 108737293B
Authority
CN
China
Prior art keywords
request
time
sending
sending time
receiving end
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.)
Active
Application number
CN201710244046.1A
Other languages
English (en)
Other versions
CN108737293A (zh
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.)
Huawei Technologies Co Ltd
Institute of Computing Technology of CAS
Original Assignee
Huawei Technologies Co Ltd
Institute of Computing Technology of CAS
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 Huawei Technologies Co Ltd, Institute of Computing Technology of CAS filed Critical Huawei Technologies Co Ltd
Priority to CN201710244046.1A priority Critical patent/CN108737293B/zh
Publication of CN108737293A publication Critical patent/CN108737293A/zh
Application granted granted Critical
Publication of CN108737293B publication Critical patent/CN108737293B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请公开了一种处理请求的方法和装置,该方法包括:接收端接收第一请求和第二请求,其中,所述第一请求为第一发送端在第一发送时刻发送的请求,所述第二请求为所述第一发送端在第二发送时刻发送的请求,所述第一请求和所述第二请求为第一应用程序生成的不同的请求;所述接收端获取所述第一发送时刻和所述第二发送时刻;所述接收端根据所述第一发送时刻和所述第二发送时刻的时序处理所述第一请求和所述第二请求,其中,所述第一发送时刻和所述第二发送时刻的时序与所述第一请求和所述第二请求的处理顺序相同。从而可以减小同一个应用生成的不同请求的时延波动,增强计算机网络的稳定性。

Description

处理请求的方法和装置
技术领域
本申请涉及计算机领域,尤其涉及一种处理请求的方法和装置。
背景技术
在计算机网络中,例如,在分布式存储系统中,请求的输入/输出(input/output,IO)路径包括网络和存储等多个阶段,每个阶段均存在一个请求队列,该请求队列中的请求按照某种次序被处理。
当前,服务器接收到不同的请求时按照先来先服务(first come first service,FCFS)的原则对请求进行处理,即,服务器记录请求到达服务器的时刻,并优先处理到达服务器的时刻较早的请求。
由于网络和磁盘IO的服务时间抖动以及排队时间等因素的影响,请求在各个阶段均会存在一定的延迟,若按照FCFS的原则对同一个应用生成的不同请求进行处理时,当一个请求在某个阶段的延迟较高时,则该请求在后续阶段的延迟会越来越高,形成长尾延迟(long tail latency),导致该应用的不同请求之间时延波动增大,对该应用的性能造成不利影响。
发明内容
有鉴于此,本申请提供了一种处理请求的方法和装置,能够减小同一个应用生成的不同请求的时延波动,增强计算机网络的稳定性。
一方面,提供了一种处理请求的方法,包括:接收端接收第一发请求和第二请求,其中,所述第一请求为第一发送端在第一发送时刻发送的请求,所述第二请求为所述第一发送端在第二发送时刻发送的请求,所述第一请求和所述第二请求为第一应用程序生成的不同的请求;所述接收端获取所述第一发送时刻和所述第二发送时刻;所述接收端根据所述第一发送时刻和所述第二发送时刻的时序处理所述第一请求和所述第二请求,其中,所述第一发送时刻和所述第二发送时刻的时序与所述第一请求和所述第二请求的处理顺序相同。
根据本申请提供的方法,接收端优先处理同一个应用生成的不同请求中发送时刻较早的请求,能够减小同一个应用生成的不同请求的时延波动,增强计算机网络的稳定性。
可选地,所述接收端根据所述第一发送时刻和所述第二发送时刻的时序处理所述第一请求和所述第二请求,包括:所述接收端根据所述第一发送时刻和所述第二发送时刻的时序将所述第一请求和所述第二请求在请求队列中的第一顺序调整为第二顺序,其中,所述第一请求按照所述第一顺序位于所述第二请求之后,所述第一请求按照所述第二顺序位于所述第二请求之前,所述第一顺序是根据所述第一请求的第一到达时刻以及所述第二请求的第二到达时刻的时序确定的,所述第二顺序是根据所述第一发送时刻以及所述第二发送时刻的时序确定的,所述第一发送时刻早于所述第二发送时刻,所述第一到达时刻晚于第二到达时刻,所述第一到达时刻为所述接收端接收到所述第一请求的时刻,所述第二到达时刻为所述接收端接收到所述第二请求的时刻;所述接收端按照所述第二顺序处理所述第一发送请求和所述第二发送请求。
根据本申请提供的方法,接收端可以根据请求在队列中的位置调整请求的待处理顺序。
可选地,所述方法还包括:所述接收端接收第三请求,所述第三请求为根据与所述第一应用程序不同的第二应用程序生成的请求,其中所述第三请求的第三到达时刻晚于所述第一到达时刻,所述第三请求在所述请求队列中的位置位于所述第一请求在所述请求队列中的位置之后;所述接收端在处理所述第一请求以及所述第二请求之后处理所述第三请求。
根据本申请提供的方法,可以保证不同应用生成的请求被处理时的时延公平性。
可选地,所述接收端获取所述第一发送时刻和所述第二发送时刻,包括:所述接收端根据所述第一请求携带的第一发送时刻标签获取所述第一发送时刻,所述第一发送时刻标签用于表示所述第一发送时刻;所述接收端根据所述第二请求携带的第二发送时刻标签获取所述第二发送时刻,所述第二发送时刻标签用于表示所述第二发送时刻。
从而,当接收端对请求的处理包括多个阶段时,接收端在该多个阶段可以分别根据第一发送时刻标签和第二发送时刻标签确定第一请求和第二请求的发送时刻。
可选地,所述第一发送时刻标签位于所述第一请求的头部,所述第二发送时刻标签位于所述第二请求的头部。
可选地,所述第一请求和所述第二请求分别包括所述第一应用程序的标识。
从而,接收端可以确定第一请求和第二请求的发送端。
另一方面,提供了一种处理请求的装置,该装置可以实现上述方面所涉及方法中接收端所执行的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相应的单元或模块。
在一种可能的设计中,该装置的结构中包括处理器和通信接口,该处理器被配置为支持该装置执行上述方法中相应的功能。该通信接口用于支持该装置与其它网元之间的通信。该装置还可以包括存储器,该存储器用于与处理器耦合,其保存该装置必要的程序指令和数据。
再一方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被接收端的通信单元、处理单元或通信接口、处理器运行时,使得接收端执行上述实现方式中的方法。
再一方面,本申请提供了一种计算机存储介质,用于储存为上述接收端所用的计算机软件指令,其包含用于执行上述方面所设计的程序。
附图说明
图1是本申请提供的一种处理请求的方法的示意性流程图;
图2是FCFS调度方法与本申请提供的一种调度方法的对比示意图;
图3是本申请提供的一种包括多个处理阶段的请求调度方法的示意性流程图;
图4是本申请提供的一种处理请求的装置的结构示意图;
图5是本申请提供的另一种处理请求的装置的结构示意图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
图1是本申请提供的一种处理请求的方法的示意性流程图。如图1所示,该方法100包括:
S110,接收端接收第一请求和第二请求,其中,所述第一请求为第一发送端在第一发送时刻发送的请求,所述第二请求为所述第一发送端在第二发送时刻发送的请求,所述第一请求和所述第二请求为第一应用程序生成的不同的请求。
S120,所述接收端获取所述第一发送时刻和所述第二发送时刻。
S130,所述接收端根据所述第一发送时刻和所述第二发送时刻的时序处理所述第一请求和所述第二请求,其中,所述第一发送时刻和所述第二发送时刻的时序与所述第一请求和所述第二请求的处理顺序相同。
在本申请中,接收端为接收请求的任意一个单元,第一发送端为发送请求的任意一个单元,作为一个可选的示例,接收端是服务器,第一发送端是客户端,服务器和客户端是两个不同的实体设备;作为另一个可选的示例,接收端和第一发送端为位于同一个实体设备中的不同模块。为方便理解本申请,以下,以接收端为服务器、发送端为客户端为例对本申请的技术方案进行描述。
S110和S120中,第一发送时刻和第二发送时刻为第一客户端记录的时刻,第一发送时刻和第二发送时刻可以分别记录在第一请求和第二请求中,该两个时刻也可以通过专用信息发送给服务器,本申请对服务器确定第一发送时刻和第二发送时刻的具体方法不作限定。
S130中,当第一发送时刻早于所述第二发送时刻时,接收端将优先处理第一请求,当第一发送时刻晚于第二发送时刻时,服务器将优先处理第二请求。
为了更清楚地说明方法100能够减小同一个应用生成的不同请求的时延波动,图2示出了本申请提供的调度方法以及FCFS调度方法的对比示意图。
如图2所示,C1为第一客户端,A1为第一应用,A1生成了三个请求并分别发送至服务器,该三个请求的发送时刻分别为0、2、4,如图中的虚线方框所示,其中,发送时刻0早于发送时刻2,发送时刻2早于发送时刻4。当该三个请求到达服务器时,由于网络传输原因导致该三个请求到达服务器的时刻发生变化,发送时刻为4的请求最先到达服务器,其次是发送时刻为2的请求,发送时刻为0的请求最后到达服务器。图2中深色的方框表示该三个请求到达服务器时该服务器中其它正在排队等待被处理的请求。
按照FCFS原则,服务器将首先处理发送时刻为4的请求,其次处理发送时刻为2的请求,最后处理发送时刻为0的请求,该三个请求的待处理顺序如图2中FCFS对应的方框所示,其中,处理顺序为从右往左依次处理。
令发送时刻为4的请求被处理的时刻为a,服务器每处理一个请求所需时间为b,服务器处理完一个请求后立刻处理下一个请求,则该三个请求完成处理后的平均时延为[(a-4+0+b)+(a-2+b+b)+(a-0+2b+b)]/3=a-2+2b,其中,(a-4+0+b)表示发送时刻为4的请求的时延,(a-2+b+b)表示发送时刻为2的请求的时延,(a-0+2b+b)表示发送时刻为0的请求的时延。该三个时延中最高时延与上述平均时延的差值为b+2。
按照方法100,服务器将首先处理发送时刻为0的请求,其次处理发送时刻为2的请求,最后处理发送时刻为4的请求,该三个请求的待处理顺序如图2中当前延迟优先(current latency first,CLF)对应的方框所示,其中,处理顺序为从右往左依次处理。
令发送时刻为4的请求被处理的时刻为a,服务器每处理一个请求所需时间为b,服务器处理完一个请求后立刻处理下一个请求,则该三个请求完成处理后的平均时延为[(a-0+0+b)+(a-2+b+b)+(a-4+2b+b)]/3=a-2+2b,其中,(a-0+0+b)表示发送时刻为0的请求的时延,(a-2+b+b)表示发送时刻为2的请求的时延,(a-4+2b+b)表示发送时刻为4的请求的时延。该三个时延中最高时延与上述平均时延的差值为|b-2|。
相比于FCFS,CLF调度方法可以使单个请求的最高时延与平均时延的差值减小2b(2>b>0)或4(b≥2)。
由此可见,本申请提供的调度方法100,能够减小同一个应用生成的不同请求的时延波动,增强计算机网络的稳定性。
可选地,所述接收端根据所述第一发送时刻和所述第二发送时刻的时序处理所述第一请求和所述第二请求,包括:
S131,所述接收端根据所述第一发送时刻和所述第二发送时刻的时序将所述第一请求和所述第二请求在请求队列中的第一顺序调整为第二顺序,其中,所述第一请求按照所述第一顺序位于所述第二请求之后,所述第一请求按照所述第二顺序位于所述第二请求之前,所述第一顺序是根据所述第一请求的第一到达时刻以及所述第二请求的第二到达时刻的时序确定的,所述第二顺序是根据所述第一发送时刻以及所述第二发送时刻的时序确定的,所述第一发送时刻早于所述第二发送时刻,所述第一到达时刻晚于第二到达时刻,所述第一到达时刻为所述接收端接收到所述第一请求的时刻,所述第二到达时刻为所述接收端接收到所述第二请求的时刻。
S132,所述接收端按照所述第二顺序处理所述第一发送请求和所述第二发送请求。
在S131和S132中,服务器可以将全部待处理请求通过队列进行排序,请求队列用于缓存待处理的请求,每个请求占据请求队列中的一个位置,请求队列中的一个位置只能容纳一个请求,请求队列中的每个请求占据的位置的顺序与所述每个请求的待处理顺序相同。
例如,第一发送时刻早于第二发送时刻,则第一请求在请求队列中的位置排在第二请求在请求队列中的位置之前,并且,第一请求将先于第二请求被处理。
应理解,上述实施例仅是举例说明,本申请对确定第一请求和第二请求的待处理顺序的具体方式不做限定,例如,还可以通过“堆”或“栈”确定第一请求和第二请求的待处理顺序。
可选地,方法100还包括:
S140,所述接收端接收第三请求,所述第三请求为根据与所述第一应用程序不同的第二应用程序生成的请求,其中所述第三请求的第三到达时刻晚于所述第一到达时刻,所述第三请求在所述请求队列中的位置位于所述第一请求在所述请求队列中的位置之后。
S150,所述接收端在处理所述第一请求以及所述第二请求之后处理所述第三请求。
在本申请中,服务器可能接收到来自多个应用的请求,为了保证对不同应用的公平性,服务器在对来自同一个应用的请求进行排序前,首先对来自不同应用的请求进行排序。
例如,当服务器接收到第一请求、第二请求和第三请求之后,首先根据该三个请求到达服务器的时刻确定该三个请求在请求队列中的位置,当第三到达时刻晚于第一到达时刻和第二到达时刻时,第三请求在请求队列中的位置位于第一请求和第二请求在请求队列中的位置之后,随后再根据第一请求和第二请求的发送时刻确定第一请求和第二请求在请求队列中的位置。其中,发送第三请求的第二发送端可以与第一发送端相异,也可以与第一发送端相同。
可选地,所述接收端获取所述第一发送时刻和所述第二发送时刻,包括:
S121,所述接收端根据所述第一请求携带的第一发送时刻标签获取所述第一发送时刻,所述第一发送时刻标签用于表示所述第一发送时刻。
S122,所述接收端根据所述第二请求携带的第二发送时刻标签获取所述第二发送时刻,所述第二发送时刻标签用于表示所述第二发送时刻。
在本申请中,第一请求和第二请求可以分别携带用于表示各自的发送时刻的标签,即,第一发送时刻标签和第二发送时刻标签,从而,当服务器对请求的处理包括多个阶段时,服务器在该多个阶段可以分别根据第一发送时刻标签和第二发送时刻标签确定第一请求和第二请求的发送时刻。
可选地,所述第一发送时刻标签位于所述第一请求的头部,所述第二发送时刻标签位于所述第二请求的头部。
可选地,所述第一请求和所述第二请求分别包括所述第一应用程序的标识。
从而,服务器可以确定第一请求和第二请求的发送端。
在本申请中,接收端对请求的处理可能包括多个处理阶段,对于同一个应用生成的请求,接收端在该多个处理阶段中的每个处理阶段均按照方法100确定各个请求的待处理顺序。
图3示出了一种包括多个处理阶段的请求调度方法。如图3所示,一个请求生成后经过以下四个处理阶段:
发送阶段(send stage),请求从客户端发送至服务器端;
查找阶段(lookup stage),服务器查找数据所在的位置,其中,该请求用于请求服务器查找数据;
数据阶段(data stage),服务器读取该请求所需要的数据;
反馈阶段(reply stage),服务器将该请求的处理结果反馈给客户端。
对于发送阶段,控制器(controller)将发送时刻(TTime)标签和应用程序标签添加到请求的头部,当请求到达服务器时,控制器将该请求抵达服务器的时刻(ATime)标签添加至请求头部,从而,服务器可以确定不同应用生成的请求的发送时刻和到达时刻。
随后,控制器将请求插入至查找阶段的请求队列,ATime越早的请求越靠近请求队列的头部,即,ATime较早的请求优先被处理,控制器根据同一个应用生成的请求的TTime标签调整同一个应用生成的请求在请求队列中的位置,TTime越早越靠近请求队列的头部,即,同一个应用生成的请求中,TTime较早的请求优先被处理。
对于数据阶段和反馈阶段,每个阶段均按照与查找阶段相同的方法确定各个请求在请求队列中的位置。
上文详细介绍了本申请提供的处理请求的方法的示例。可以理解的是,接收端和发送端为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在采用集成的单元的情况下,图4示出了上述实施例中所涉及的服务器(即,处理请求的装置)的一种可能的结构示意图。服务器400包括:处理单元402和通信单元403。处理单元402用于对服务器400的动作进行控制管理,例如,处理单元402用于支持服务器400执行图1的S130和/或用于本文所描述的技术的其它过程。通信单元403用于支持服务器400与其它网络实体的通信,例如与客户端之间的通信。服务器400还可以包括存储单元401,用于存储服务器400的程序代码和数据。
其中,处理单元402可以是处理器或控制器,例如可以是中央处理器(centralprocessing unit,CPU),通用处理器,数字信号处理器(digital signal processor,DSP),专用集成电路(application-specific integrated circuit,ASIC),现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信单元403可以是通信接口等。存储单元401可以是存储器。
当处理单元402为处理器,通信单元403为通信接口,存储单元401为存储器时,本申请所涉及的服务器可以为图5所示的服务器。
参阅图5所示,该服务器500包括:处理器502、通信接口503、存储器501。其中,通信接口503、处理器502以及存储器501可以通过内部连接通路相互通信,传递控制和/或数据信号。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不加赘述。
本申请提供的服务器400和服务器500,根据同一个应用生成的不同请求的发送时刻确定所述不同请求的待处理顺序,能够减小同一个应用生成的不同请求的时延波动,增强计算机网络的稳定性。
在本申请各个实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请的实施过程构成任何限定。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(readonly memory,ROM)、可擦除可编程只读存储器(erasable programmable ROM,EPROM)、电可擦可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于服务器中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。

Claims (10)

1.一种处理请求的方法,其特征在于,包括:
接收端接收第一请求、第二请求和第三请求,其中,所述第一请求为第一发送端在第一发送时刻发送的请求,所述第二请求为所述第一发送端在第二发送时刻发送的请求,所述第一请求和所述第二请求为第一应用程序生成的不同的请求,所述第三请求为根据与所述第一应用程序不同的第二应用程序生成的请求;
所述接收端获取所述第一发送时刻和所述第二发送时刻;
所述接收端根据所述第一发送时刻和所述第二发送时刻的时序处理所述第一请求和所述第二请求,其中,所述第一发送时刻和所述第二发送时刻的时序与所述第一请求和所述第二请求的处理顺序相同;
所述接收端根据所述第三请求在请求队列中的位置处理所述第三请求。
2.根据权利要求1所述的方法,其特征在于,所述接收端根据所述第一发送时刻和所述第二发送时刻的时序处理所述第一请求和所述第二请求,包括:
所述接收端根据所述第一发送时刻和所述第二发送时刻的时序将所述第一请求和所述第二请求在所述请求队列中的第一顺序调整为第二顺序,其中,所述第一请求按照所述第一顺序位于所述第二请求之后,所述第一请求按照所述第二顺序位于所述第二请求之前,所述第一顺序是根据所述第一请求的第一到达时刻以及所述第二请求的第二到达时刻的时序确定的,所述第二顺序是根据所述第一发送时刻以及所述第二发送时刻的时序确定的,所述第一发送时刻早于所述第二发送时刻,所述第一到达时刻晚于第二到达时刻,所述第一到达时刻为所述接收端接收到所述第一请求的时刻,所述第二到达时刻为所述接收端接收到所述第二请求的时刻;
所述接收端按照所述第二顺序处理所述第一发送请求和所述第二发送请求。
3.根据权利要求2所述的方法,其特征在于,所述第三请求的第三到达时刻晚于所述第一到达时刻,所述第三请求在所述请求队列中的位置位于所述第一请求在所述请求队列中的位置之后;
所述接收端根据所述第三请求在请求队列中的位置处理所述第三请求,包括:
所述接收端在处理所述第一请求以及所述第二请求之后处理所述第三请求。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述接收端获取所述第一发送时刻和所述第二发送时刻,包括:
所述接收端根据所述第一请求携带的第一发送时刻标签获取所述第一发送时刻,所述第一发送时刻标签用于表示所述第一发送时刻;
所述接收端根据所述第二请求携带的第二发送时刻标签获取所述第二发送时刻,所述第二发送时刻标签用于表示所述第二发送时刻。
5.根据权利要求1至3中任一项所述的方法,其特征在于,
所述第一请求和所述第二请求分别包括所述第一应用程序的标识。
6.一种处理请求的装置,其特征在于,包括处理单元和通信单元,
所述通信单元用于接收第一请求、第二请求和第三请求,其中,所述第一请求为第一发送端在第一发送时刻发送的请求,所述第二请求为所述第一发送端在第二发送时刻发送的请求,所述第一请求和所述第二请求为第一应用程序生成的不同的请求,所述第三请求为根据与所述第一应用程序不同的第二应用程序生成的请求;
所述处理单元用于获取所述第一发送时刻和所述第二发送时刻;
所述处理单元还用于根据所述第一发送时刻和所述第二发送时刻的时序处理所述第一请求和所述第二请求,其中,所述第一发送时刻和所述第二发送时刻的时序与所述第一请求和所述第二请求的处理顺序相同;
所述处理单元还用于根据所述第三请求在请求队列中的位置处理所述第三请求。
7.根据权利要求6所述的装置,其特征在于,所述处理单元具体用于:
根据所述第一发送时刻和所述第二发送时刻的时序将所述第一请求和所述第二请求在所述请求队列中的第一顺序调整为第二顺序,其中,所述第一请求按照所述第一顺序位于所述第二请求之后,所述第一请求按照所述第二顺序位于所述第二请求之前,所述第一顺序是根据所述第一请求的第一到达时刻以及所述第二请求的第二到达时刻的时序确定的,所述第二顺序是根据所述第一发送时刻以及所述第二发送时刻的时序确定的,所述第一发送时刻早于所述第二发送时刻,所述第一到达时刻晚于第二到达时刻,所述第一到达时刻为所述通信单元接收到所述第一请求的时刻,所述第二到达时刻为所述通信单元接收到所述第二请求的时刻;
按照所述第二顺序处理所述第一发送请求和所述第二发送请求。
8.根据权利要求7所述的装置,其特征在于,所述第三请求的第三到达时刻晚于所述第一到达时刻,所述第三请求在所述请求队列中的位置位于所述第一请求在所述请求队列中的位置之后;
所述处理单元还用于在处理所述第一请求以及所述第二请求之后处理所述第三请求。
9.根据权利要求6至8中任一项所述的装置,其特征在于,所述处理单元还用于:
根据所述第一请求携带的第一发送时刻标签获取所述第一发送时刻,所述第一发送时刻标签用于表示所述第一发送时刻;
根据所述第二请求携带的第二发送时刻标签获取所述第二发送时刻,所述第二发送时刻标签用于表示所述第二发送时刻。
10.根据权利要求6至8中任一项所述的装置,其特征在于,
所述第一请求和所述第二请求分别包括所述第一应用程序的标识。
CN201710244046.1A 2017-04-14 2017-04-14 处理请求的方法和装置 Active CN108737293B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710244046.1A CN108737293B (zh) 2017-04-14 2017-04-14 处理请求的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710244046.1A CN108737293B (zh) 2017-04-14 2017-04-14 处理请求的方法和装置

Publications (2)

Publication Number Publication Date
CN108737293A CN108737293A (zh) 2018-11-02
CN108737293B true CN108737293B (zh) 2021-06-22

Family

ID=63924378

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710244046.1A Active CN108737293B (zh) 2017-04-14 2017-04-14 处理请求的方法和装置

Country Status (1)

Country Link
CN (1) CN108737293B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112040001A (zh) * 2020-09-07 2020-12-04 平安科技(深圳)有限公司 一种基于分布式存储的请求处理方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1109233A (zh) * 1993-10-08 1995-09-27 国际商业机器公司 在网络上的报文传输
CN101989942A (zh) * 2009-08-07 2011-03-23 无锡江南计算技术研究所 仲裁控制方法、通信方法、仲裁器和通信系统
CN102025649A (zh) * 2010-06-04 2011-04-20 西本新干线股份有限公司 企业服务总线的消息处理方法
CN102916977A (zh) * 2012-11-15 2013-02-06 易程科技股份有限公司 Tcp请求的处理方法及装置
CN105184378A (zh) * 2015-07-17 2015-12-23 苏州信亨自动化科技有限公司 一种基于移动位置信息的排队方法及系统
CN106375329A (zh) * 2016-09-20 2017-02-01 腾讯科技(深圳)有限公司 一种数据推送方法和时序控制器以及数据推送系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1109233A (zh) * 1993-10-08 1995-09-27 国际商业机器公司 在网络上的报文传输
CN101989942A (zh) * 2009-08-07 2011-03-23 无锡江南计算技术研究所 仲裁控制方法、通信方法、仲裁器和通信系统
CN102025649A (zh) * 2010-06-04 2011-04-20 西本新干线股份有限公司 企业服务总线的消息处理方法
CN102916977A (zh) * 2012-11-15 2013-02-06 易程科技股份有限公司 Tcp请求的处理方法及装置
CN105184378A (zh) * 2015-07-17 2015-12-23 苏州信亨自动化科技有限公司 一种基于移动位置信息的排队方法及系统
CN106375329A (zh) * 2016-09-20 2017-02-01 腾讯科技(深圳)有限公司 一种数据推送方法和时序控制器以及数据推送系统

Also Published As

Publication number Publication date
CN108737293A (zh) 2018-11-02

Similar Documents

Publication Publication Date Title
US10318467B2 (en) Preventing input/output (I/O) traffic overloading of an interconnect channel in a distributed data storage system
US9965441B2 (en) Adaptive coalescing of remote direct memory access acknowledgements based on I/O characteristics
US7953915B2 (en) Interrupt dispatching method in multi-core environment and multi-core processor
CN109690510B (zh) 用于将数据分发到高性能计算网络和基于云的网络中的多个接收器的多播装置和方法
US8131881B2 (en) Completion coalescing by TCP receiver
US20150288624A1 (en) Low-latency processing in a network node
CN115934625B (zh) 一种用于远程直接内存访问的敲门铃方法、设备及介质
CN111400212A (zh) 一种基于远程直接数据存取的传输方法、设备
CN112148644B (zh) 处理输入/输出请求的方法、装置和计算机程序产品
CN115643318A (zh) 命令执行方法、装置、设备及计算机可读存储介质
CN113157465B (zh) 基于指针链表的消息发送方法及装置
CN108737293B (zh) 处理请求的方法和装置
CN110413210B (zh) 用于处理数据的方法、设备和计算机程序产品
US9137331B2 (en) Adaptive replication
US20160057068A1 (en) System and method for transmitting data embedded into control information
KR101458436B1 (ko) 데이터 전송 방법 및 이를 적용한 주식 체결 시스템
CN115469804B (zh) NVMe多队列仲裁方法及装置
US11714692B2 (en) Classical management of qubit requests
CN108737457B (zh) 处理请求的方法和装置
CN110602211B (zh) 一种带异步通知的乱序rdma方法与装置
EP3547628B1 (en) Method and high performance computing (hpc) switch for optimizing distribution of data packets
US9348674B2 (en) Aysnchronous communications having compounded responses
US9674282B2 (en) Synchronizing SLM statuses of a plurality of appliances in a cluster
CN114553757B (zh) 基于可编程交换机的协议报文处理方法、装置和设备
US11003512B2 (en) System and method for optimizing bulk data operation

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