任务处理方法、装置和系统与流程

    专利查询2022-08-09  150



    1.本公开的实施例涉及计算机技术领域,具体涉及任务处理方法和装置。


    背景技术:

    2.分布式服务器(distributed server)的出现和发展同时也推动了任务处理的不断优化。一般地,许多任务处理系统随着业务规模的不断扩大,通常会在不同的地区分别部署服务器以分散任务处理压力,也可以为用户提供及时的任务处理服务。
    3.现有的基于分布式服务器的任务处理方法,一种是将各个地区的服务器作为一个整体来处理接收到的任务处理请求。一种是每个地区的服务器负责处理该地区的任务处理请求。如何进一步优化任务处理效果是相关研究人员不断在探索和研究的问题之一。


    技术实现要素:

    4.本公开的实施例提出了任务处理方法和装置。
    5.第一方面,本公开的实施例提供了一种任务处理方法,该方法包括:接收控制服务器基于预设对应关系发送的任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;获取当前的负载信息,以及根据负载信息确定是否处理该任务处理请求;响应于确定不处理该任务处理请求,向控制服务器发送退回信息,以使控制服务器重新选取处理服务器完成该任务处理请求的处理。
    6.第二方面,本公开的实施例提供了一种任务处理方法,该方法包括:根据预设对应关系,向任务处理请求对应的处理服务器发送任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系,以使处理服务器根据当前的负载信息确定是否处理任务处理请求;响应于接收到处理服务器发送的退回信息,重新选取处理服务器完成任务处理请求的处理,其中,退回信息用于指示处理服务器确定不处理任务处理请求。
    7.第三方面,本公开的实施例提供了一种任务处理系统,该系统包括控制服务器和至少两个处理服务器。控制服务器,根据预设对应关系,从至少两个处理服务器中选取任务处理请求对应的处理服务器,以及向选取的处理服务器发送任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;任务处理请求对应的处理服务器获取当前的负载信息,以及根据负载信息确定是否处理任务处理请求;响应于确定不处理任务处理请求,向控制服务器发送退回信息;控制服务器基于退回信息,从至少两个处理服务器包括的未被选取的处理服务器中选取处理服务器完成任务处理请求的处理。
    8.第四方面,本公开的实施例提供了一种任务处理装置,该装置包括:接收单元,被配置成接收控制服务器基于预设对应关系发送的任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;确定单元,被配置成获取当前的负载信息,以及根据负载信息确定是否处理任务处理请求;处理单元,被配置成响应于确定不处理任务处理请求,向控制服务器发送退回信息,以使控制服务器重新选取处理服务器完成任务处理请求的处理。
    9.第五方面,本公开的实施例提供了一种任务处理装置,该装置包括:发送单元,被配置成根据预设对应关系,向任务处理请求对应的处理服务器发送任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系,以使处理服务器根据当前的负载信息确定是否处理任务处理请求;选取单元,被配置成响应于接收到处理服务器发送的退回信息,重新选取处理服务器完成任务处理请求的处理,其中,退回信息用于指示处理服务器确定不处理任务处理请求。
    10.第六方面,本公开的实施例提供了一种服务器,该服务器包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。
    11.第七方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
    12.本公开的实施例提供的任务处理方法和装置,通过控制服务器先根据任务处理请求的位置信息向对应处理服务器发送该任务处理请求,对应的处理服务器再根据其当前的负载信息确定是否要处理该任务处理请求,并在确定不处理该任务处理请求时,向控制服务器发送退回信息,以使控制服务器重新选取其它处理服务器来处理该任务处理请求,从而可以使得某一个位置对应的处理服务器在负载较高时,可以由其它处理服务器来分担处理该位置处的任务处理请求,有助于提升整体处理服务器的利用率和负载均衡。
    附图说明
    13.通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
    14.图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
    15.图2是根据本公开的任务处理方法的一个实施例的流程图;
    16.图3是根据本公开的任务处理方法的又一个实施例的流程图;
    17.图4是根据本公开的任务处理方法的再一个实施例的流程图;
    18.图5是根据本公开的任务处理系统的一个实施例的时序图;
    19.图6是根据本公开的实施例的任务处理系统的一个应用场景的示意图;
    20.图7是根据本公开的任务处理装置的一个实施例的流程图;
    21.图8是根据本公开的任务处理装置的又一个实施例的流程图;
    22.图9是适于用来实现本公开的实施例的服务器的结构示意图。
    具体实施方式
    23.下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
    24.需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
    25.图1示出了可以应用本公开的任务处理方法或任务处理装置的实施例的示例性架构100。
    26.如图1所示,系统架构100可以包括终端设备101、控制服务器102和处理服务器103。终端设备101和控制服务器102之间可以通过如有线、无线通信链路或者光纤电缆等各种方式进行通信连接,控制服务器102和处理服务器103也可以通过如有线、无线通信链路或者光纤电缆等各种方式进行通信连接。
    27.终端设备101上可以安装有各种客户端应用。例如,搜索类应用、购物类应用、即时通信工具、社交类应用、信息流类应用、音视频处理类应用等等。
    28.终端设备101可以是硬件,也可以是软件。当终端设备101为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
    29.控制服务器102可以是提供各种服务的服务器。例如,控制服务器102可以接收终端设备101发送的任务处理请求,并为该任务处理请求分配处理服务器以完成该任务处理请求的处理。
    30.处理服务器103可以是提供各种任务处理服务的服务器。例如,处理服务器103可以接收控制服务器102发送的任务处理请求,并对该任务处理请求指示的待处理任务进行处理。处理服务器103在接收到控制服务器102发送的任务处理请求之后,还可以向控制服务器102发送退回信息,以使控制服务器102为该任务处理请求重新分配其它任务处理服务器进行处理。
    31.需要说明的是,本公开的实施例所提供的任务处理方法一般由处理服务器103或控制服务器102执行,相应地,任务处理装置一般设置于处理服务器103或控制服务器102中。
    32.需要说明的是,控制服务器102和处理服务器103可以是硬件,也可以是软件。当控制服务器102或处理服务器103为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当控制服务器102或处理服务器103为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
    33.应该理解,图1中的终端设备、控制服务器和处理服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、控制服务器和处理服务器。
    34.继续参考图2,其示出了根据本公开的任务处理方法的一个实施例的流程200。该任务处理方法包括以下步骤:
    35.步骤201,接收控制服务器基于预设对应关系发送的任务处理请求。
    36.在本实施例中,任务处理方法的执行主体(如图1所示的处理服务器103)可以接收控制服务器(如图1所示的控制服务器102)发送的任务处理请求。其中,任务处理请求可以用于请求对其指示的待处理任务进行处理。待处理任务可以是各种类型的任务。例如,待处理任务可以是音视频转码等多媒体信息处理任务。
    37.控制服务器可以接收用户输入的任务处理请求,也可以接收与其通信连接的其它电子设备(如图1所示的终端设备101等)发送的任务处理请求。
    38.预设对应关系可以包括任务处理请求的位置信息与处理服务器之间的对应关系。
    因此,上述执行主体与接收到的任务处理请求的位置信息对应。
    39.其中,任务处理请求的位置信息可以用于指示任务处理请求的发送端所在的位置。预设对应关系可以由相关人员预先根据实际的应用场景进行设置。例如,可以预先对服务范围进行区域划分,并为每个区域设置对应的处理服务器,此时,每个区域中的各电子设备发送的任务处理请求的位置信息都可以对应该区域。
    40.控制服务器在接收到任务处理请求之后,可以根据该任务处理请求的位置信息,查询预设对应关系,并将该任务处理请求发送至该任务处理请求的位置信息对应的处理服务器。
    41.控制服务器可以灵活采用各种方法确定接收到的任务处理请求的位置信息。例如,任务处理请求中可以携带用于指示其位置信息的指示信息,此时,控制服务器可以根据任务请求中携带的指示信息获取任务处理请求的位置信息。
    42.步骤202,获取当前的负载信息,以及根据负载信息确定是否处理任务处理请求。
    43.在本实施例中,处理服务器可以获取其当前的负载信息。其中,负载信息可以用于表征处理服务器的工作量。当前负载信息即可以表征处理服务器当前的工作量。负载信息可以根据实际的应用需求灵活采用各种方式进行表示,包括但不限于如cpu(central processing unit,中央处理器)使用率、正在执行和等待执行的进程数等等。处理服务器可以通过自身属性查询获取其当前的负载信息。
    44.处理服务器在获取到其当前的负载信息之后,可以进一步采用各种方法确定其是否要处理控制服务器发送的任务处理请求。例如,可以预先根据处理服务器的硬件和/或软件配置等与任务处理能力相关的属性设置负载阈值,若当前的负载信息指示的负载超出负载阈值,则可以确定不处理该任务处理请求,若当前的负载信息指示的负载未超出负载阈值,则可以确定处理该任务处理请求。
    45.若处理服务器确定处理控制服务器发送的任务处理请求,则可以先获取任务处理请求指示的待处理任务,然后对待处理任务进行处理。其中,待处理任务可以根据不同的应用需求或应用场景,存储在不同位置。例如,待处理任务可以存储于向控制服务器发送任务处理请求的发送端的本地。又例如,待处理任务可以存储于控制服务器通信连接的数据库中。处理服务器可以从待处理任务的存储位置处获取待处理任务。
    46.步骤203,响应于确定不处理任务处理请求,向控制服务器发送退回信息,以使控制服务器重新选取处理服务器完成任务处理请求的处理。
    47.在本实施例中,处理服务器若确定不处理控制服务器发送的任务处理请求,可以向控制服务器发送退回信息来拒绝本次对该任务处理请求的处理。然后,控制服务器可以重新选取其它处理服务器来完成该任务处理请求的处理。
    48.控制服务器选取其它处理服务器的方式可以根据实际的应用需求灵活设置。例如,控制服务器可以随机从其它与其通信连接的各处理服务器中选取处理服务器。又例如,控制服务器可以根据其它与其通信连接的各处理服务器分别所在的位置,从中选取距离上述处理服务器所在的位置最近的处理服务器。
    49.可选地,控制服务器可以先获取处理服务器集中的各处理服务器分别对应的当前负载信息,然后从处理服务器集中选取处理服务器来完成任务处理请求的处理。
    50.其中,处理服务器集可以由于控制服务器通信连接的各处理服务器组成。一般地,
    处理服务器集包括的各处理服务器可以分别对应不同的位置信息,以分别处理位于不同位置的发送端所发送的任务处理请求。
    51.处理服务器集中的每个处理服务器可以向控制服务器发送其当前的负载信息。然后,控制服务器可以选取负载较小的处理服务器来处理任务处理请求。
    52.控制服务器通过利用各个处理服务器对应的位置信息和实时的负载信息来分配任务处理请求,可以控制某位置处的处理服务器在繁忙时,由其它空闲的处理服务器来承担当前任务处理请求的处理,从而实现对各处理服务器整体的处理能力和工作量的合理分配和控制。
    53.在本实施例的一些可选的实现方式中,处理服务器的负载信息可以包括任务处理池信息和任务等候队列信息。其中,任务处理池可以包括正在处理的任务,任务处理池信息可以用于指示任务处理池是否已满。任务等候队列可以包括等候处理的任务,任务等候队列信息可以用于指示任务等候队列是否已满。
    54.若任务处理池信息指示当前任务处理池还未满,处理服务器可以将任务处理请求指示的待处理任务添加至任务处理池中以进行处理。
    55.若任务处理池信息指示当前任务处理池已满,但任务等候队列信息指示当前任务等候队列还未满,则处理服务器可以将任务处理请求指示的待处理任务添加至任务等候队列以等候处理。
    56.若任务处理池信息指示当前任务处理池已满,且任务等候队列信息指示当前任务等候队列已满,则处理服务器可以确定不处理任务处理请求,并向控制服务器发送退回信息以拒绝对任务处理请求的处理。
    57.处理服务器根据任务处理池和任务等候队列中的任务情况快速判断当前能否处理任务处理请求,从而便于在能够处理任务处理请求时,有序的对任务处理请求进行有效处理,或在不能够处理任务处理请求时,及时向控制服务器反馈,以使控制服务器重新分配新的处理服务器来及时处理任务处理请求,避免任务长时间得不到执行的问题。
    58.现有的将各个地区的服务器作为一个整体来处理接收到的任务处理请求的任务处理方法对网络要求较高,若出现较大的流媒体文件(如音视频等),由于需要先下载文件再处理,因此很容易出现网络拥堵,处理效率较低的情况。
    59.现有的每个地区的服务器负责处理该地区的任务处理请求的任务处理方法可以减轻数据传输的开销,但是由于各地区的时差或各区域的业务需求的不同,会导致部分地区的处理服务器过于繁忙,而部分地区的处理服务器却长时间空闲等负载不均衡的情况。
    60.本公开的上述实施例提供的任务处理方法,由处理服务器在接收到其对应位置处的任务处理请求后,先根据当前的负载信息确定有能力处理该任务处理请求,以便于在不能处理该任务请求时,及时向控制服务器发送退回信息,以使控制服务器重新选取其它处理服务器来处理该任务处理请求,保证任务处理请求的及时执行,而且可以提升各位置的处理服务器的整体利用率,保证各处理服务器的负载均衡。
    61.进一步参考图3,其示出了任务处理方法的又一个实施例的流程300。该任务处理方法的流程300,包括以下步骤:
    62.步骤301,接收控制服务器基于预设对应关系发送的任务处理请求。
    63.步骤302,获取当前的长耗时任务数量。
    64.在本实施例中,处理服务器可以获取其当前的长耗时任务数量。其中,长耗时任务数量可以表示长耗时任务的数量。长耗时任务可以指耗时超出预设时长的任务。
    65.步骤303,确定任务处理请求指示的待处理任务是否属于长耗时任务。
    66.在本实施例中,处理服务器可以采用各种方法确定任务处理请求指示的待处理任务是否属于长耗时任务。例如,可以获取待处理任务相关的文件大小。如音频处理任务,则可以确定待处理音频的大小。若待处理任务对应的文件大小超出预设阈值,则可以认为待处理任务为长耗时任务。若待处理任务对应的文件大小未超出预设阈值,则可以认为待处理任务不是长耗时任务。
    67.又例如,可以预计待处理任务的处理时长。若处理时长超出预设时长,则可以认为待处理任务是长耗时任务。若处理时长未超出预设时长,则可以认为待处理任务不是长耗时任务。其中,处理服务器可以采用各种方法预计待处理任务的处理时长。作为示例,可以确定与待处理任务相似度大于预设相似度阈值的已处理任务的处理时长作为待处理任务的预计处理时长。
    68.步骤304,响应于确定待处理任务属于长耗时任务,且响应于确定长耗时任务数量到达预设阈值,确定不处理任务处理请求。
    69.在本实施例中,若确定待处理任务时长耗时任务,则可以获取当前的长耗时任务数量,并对当前的长耗时任务数量是否到达预设阈值进行判断。
    70.若当前的长耗时任务数量到达预设阈值,则处理服务器可以确定不处理任务处理请求,并向控制服务器发送退回信息以拒绝本次对任务处理请求的处理。
    71.步骤305,向控制服务器发送退回信息,以使控制服务器重新选取处理服务器完成任务处理请求的处理。
    72.本实施例中未详细说明的内容可参考图2对应实施例中的相关说明,在此不再赘述。
    73.本公开的上述实施例提供的方法通过处理服务器在接收到对应位置处的任务处理请求后,对其本地的长耗时任务数量进行判断,并在确定长耗时任务数量已经达到上限,则及时向控制服务器发送退回信息,以使控制服务器选择其它处理服务器来处理该任务处理请求,从而实现对处理服务器所处理的长耗时任务数量进行有效控制,保证各处理服务器的处理压力稳定,避免处理服务器在突然出现大量长耗时任务而出现宕机等问题,保证处理服务器的稳定性,同时也可以避免处理服务器被长耗时任务长时间占用,导致任务处理阻塞等问题,提升任务处理的时效性。
    74.下面参考图4,其示出了任务处理方法的再一个实施例的流程400。该任务处理方法的流程400,包括以下步骤:
    75.步骤401,根据预设对应关系,向任务处理请求对应的处理服务器发送任务处理请求。
    76.在本实施例中,任务处理方法的执行主体(如图1所示的控制服务器102)可以根据预设对应关系,向任务处理请求对应的处理服务器发送该任务处理请求。其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系,以使处理服务器根据当前的负载信息确定是否处理任务处理请求。
    77.步骤402,响应于接收到处理服务器发送的退回信息,重新选取处理服务器完成任
    务处理请求的处理。
    78.在本实施例中,若任务处理请求对应的处理服务器确定不处理该任务处理请求,则可以向控制服务器发送退回信息以表示拒绝对该任务处理请求的处理。此时,控制服务器可以重新选取其它处理服务器来处理该任务处理请求。
    79.在本实施例的一些可选的实现方式中,处理服务器的负载信息包括任务处理池信息和任务等候队列信息。此时,处理服务器响应于确定任务处理池信息指示当前任务处理池已满,且响应于确定任务等候队列信息指示当前任务等候队列已满,则可以确定不处理该任务处理请求。
    80.在本实施例的一些可选的实现方式中,处理服务器的负载信息可以包括长耗时任务数量。此时,处理服务器可以确定任务处理请求指示的待处理任务是否属于长耗时任务;响应于确定待处理任务属于长耗时任务,且响应于确定长耗时任务数量到达预设阈值,则可以确定不处理该任务处理请求。
    81.在本实施例的一些可选的实现方式中,控制服务器可以接收处理服务器集中的各处理服务器分别发送的当前负载信息,以使控制服务器在接收到退回信息时,可以根据各处理服务器的当前负载信息,选取处理服务器来处理任务处理请求。
    82.本实施例中未详细说明的内容可参考图2对应实施例中的相关说明,在此不再赘述。
    83.本公开的上述实施例提供的方法由控制服务器先根据任务处理请求对应的位置信息,将任务处理请求发送至该位置对应的处理服务器,以使对应的处理服务器根据当前的负载信息确定是否处理该任务处理请求,若控制服务器接收到对应的处理服务器发送的用于指示拒绝处理该任务处理请求的退回信息,则重新选取其它处理服务器来完成该任务处理请求的处理,从而实现对任务处理请求的及时处理,避免任务处理请求长时间等待的情况,提升各处理服务器整体的处理效率。
    84.下面参考图5,其示出任务处理系统的一个实施例的时序图500。
    85.本公开实施例中的任务处理系统可以包括控制服务器(如图1所示的控制服务器102)和处理服务器(如图1所示的处理服务器103)。其中,控制服务器,根据预设对应关系,从至少两个处理服务器中选取任务处理请求对应的处理服务器,以及向选取的处理服务器发送任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;任务处理请求对应的处理服务器获取当前的负载信息,以及根据负载信息确定是否处理任务处理请求;响应于确定不处理任务处理请求,向控制服务器发送退回信息;控制服务器基于退回信息,从至少两个处理服务器包括的未被选取的处理服务器中选取处理服务器完成任务处理请求的处理。
    86.如图5所示,在步骤501中,控制服务器根据预设对应关系确定任务处理请求对应的第一处理服务器。
    87.其中,对应关系可以包括任务处理请求的位置信息与处理服务器之间的对应关系。控制服务器可以从至少两个处理服务器中选取任务处理请求的位置信息对应的处理服务器作为第一处理服务器。
    88.在步骤502中,控制服务器向第一处理服务器发送任务处理请求。
    89.在步骤503中,第一处理服务器获取当前的负载信息,以及根据负载信息确定是否
    处理任务处理请求。
    90.在步骤504中,第一服务器响应于确定不处理任务处理请求,向控制服务器发送退回信息。
    91.在步骤505中,控制服务器选取第二服务器。
    92.具体地,控制服务器可以从至少两个处理服务器中除第一处理服务器之外的处理服务器中选取用于处理任务处理请求的处理服务器作为第二处理服务器。
    93.在步骤506中,控制服务器向第二服务器发送任务处理请求。
    94.在步骤507中,第二服务器对任务处理请求对应的待处理任务进行处理。
    95.在本实施例的一些可选的实现方式中,处理服务器的负载信息包括任务处理池信息和任务等候队列信息;以及任务控制请求的位置信息对应的处理服务器在接收到控制服务器发送的任务处理请求后,响应于确定任务处理池信息指示当前任务处理池已满,且响应于确定任务等候队列信息指示当前任务等候队列已满,可以确定不处理任务处理请求。
    96.在本实施例的一些可选的实现方式中,处理服务器的负载信息包括长耗时任务数量;任务控制请求的位置信息对应的处理服务器在接收到控制服务器发送的任务处理请求后,可以确定任务处理请求指示的待处理任务是否属于长耗时任务;响应于确定待处理任务属于长耗时任务,且响应于确定长耗时任务数量到达预设阈值,可以确定不处理任务处理请求。
    97.在本实施例的一些可选的实现方式中,控制服务器根据处理服务器集中的处理服务器的当前负载信息,选取处理服务器完成任务处理请求的处理。
    98.继续参见图6,图6是根据本实施例的任务处理系统的一个示意性的应用场景600。在图6的应用场景中,控制服务器601在接收到“a”地区产生的任务处理请求时,可以先查看地区和处理服务器之间的对应关系表602,以确定“a”地区的任务处理请求对应的为处理服务器“a”603,从而向处理服务器“a”发送任务处理请求。
    99.处理服务器“a”603在接收到任务处理请求时,可以先查看负载信息表604,以确定当前任务处理池和任务等候队列都已满,从而向控制服务器601发送退回信息以拒绝处理任务处理请求。
    100.控制服务器601在接收到退回信息时,查看处理服务器负载信息表605,以确定当前处理服务器“b”处于空闲状态,从而向处理服务器“b”发送任务处理请求,以使处理服务器“b”完成对任务处理请求指示的待处理任务的处理。
    101.本公开的上述实施例提供的任务处理系统通过控制服务器先根据任务处理请求的位置信息向对应处理服务器发送该任务处理请求,对应的处理服务器再根据其当前的负载信息确定是否要处理该任务处理请求,并在确定不处理该任务处理请求时,向控制服务器发送退回信息,以使控制服务器重新选取其它处理服务器来处理该任务处理请求,从而可以使得某一个位置对应的处理服务器在负载较高时,可以由其它处理服务器来分担处理该位置处的任务处理请求,有助于提升整体处理服务器的利用率和负载均衡。
    102.进一步参考图7,作为对上述各图所示方法的实现,本公开提供了任务处理装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
    103.如图7所示,本实施例提供的任务处理装置700包括接收单元701、确定单元702和
    处理单元703。其中,接收单元701被配置成接收控制服务器基于预设对应关系发送的任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;确定单元702被配置成获取当前的负载信息,以及根据负载信息确定是否处理任务处理请求;处理单元703被配置成响应于确定不处理任务处理请求,向控制服务器发送退回信息,以使控制服务器重新选取处理服务器完成任务处理请求的处理。
    104.在本实施例中,任务处理装置700中:接收单元701、确定单元702和处理单元703的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201、步骤202和步骤203的相关说明,在此不再赘述。
    105.在本实施例的一些可选的实现方式中,负载信息包括任务处理池信息和任务等候队列信息;以及上述确定单元702进一步被配置成:响应于确定任务处理池信息指示当前任务处理池已满,且响应于确定任务等候队列信息指示当前任务等候队列已满,确定不处理任务处理请求。
    106.在本实施例的一些可选的实现方式中,负载信息包括长耗时任务数量;以及上述确定单元702进一步被配置成:确定任务处理请求指示的待处理任务是否属于长耗时任务;响应于确定待处理任务属于长耗时任务,且响应于确定长耗时任务数量到达预设阈值,确定不处理任务处理请求。
    107.在本实施例的一些可选的实现方式中,控制服务器根据处理服务器集中的处理服务器的当前负载信息,选取处理服务器完成任务处理请求的处理。
    108.本公开的上述实施例提供的装置,通过接收单元接收控制服务器基于预设对应关系发送的任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;确定单元获取当前的负载信息,以及根据负载信息确定是否处理任务处理请求;处理单元响应于确定不处理任务处理请求,向控制服务器发送退回信息,以使控制服务器重新选取处理服务器完成任务处理请求的处理,以保证在任务处理请求的位置信息对应的处理服务器无法处理该任务处理请求时,及时向控制服务器发送退回信息,以使控制服务器重新选取其它处理服务器来处理该任务处理请求,保证任务处理请求的及时执行,而且可以提升各位置的处理服务器的整体利用率,保证各处理服务器的负载均衡。
    109.进一步参考图8,作为对上述各图所示方法的实现,本公开提供了任务处理装置的又一个实施例,该装置实施例与图4所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
    110.如图8所示,本实施例提供的任务处理装置800包括发送单元801和选取单元802。其中,发送单元801被配置成根据预设对应关系,向任务处理请求对应的处理服务器发送任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系,以使处理服务器根据当前的负载信息确定是否处理任务处理请求;选取单元802被配置成响应于接收到处理服务器发送的退回信息,重新选取处理服务器完成任务处理请求的处理,其中,退回信息用于指示处理服务器确定不处理任务处理请求。
    111.在本实施例中,任务处理装置800中:发送单元801和选取单元802的具体处理及其所带来的技术效果可分别参考图4对应实施例中的步骤401和步骤402的相关说明,在此不再赘述。
    112.在本实施例的一些可选的实现方式中,处理服务器的负载信息包括任务处理池信
    息和任务等候队列信息。此时,处理服务器响应于确定任务处理池信息指示当前任务处理池已满,且响应于确定任务等候队列信息指示当前任务等候队列已满,则可以确定不处理该任务处理请求。
    113.在本实施例的一些可选的实现方式中,处理服务器的负载信息可以包括长耗时任务数量。此时,处理服务器可以确定任务处理请求指示的待处理任务是否属于长耗时任务;响应于确定待处理任务属于长耗时任务,且响应于确定长耗时任务数量到达预设阈值,则可以确定不处理该任务处理请求。
    114.在本实施例的一些可选的实现方式中,控制服务器可以接收处理服务器集中的各处理服务器分别发送的当前负载信息,以使控制服务器在接收到退回信息时,可以根据各处理服务器的当前负载信息,选取处理服务器来处理任务处理请求。
    115.本公开的上述实施例提供的装置,通过发送单元根据预设对应关系,向任务处理请求对应的处理服务器发送任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系,以使处理服务器根据当前的负载信息确定是否处理任务处理请求;选取单元响应于接收到处理服务器发送的退回信息,重新选取处理服务器完成任务处理请求的处理,其中,退回信息用于指示处理服务器确定不处理任务处理请求,从而实现对任务处理请求的及时处理,避免任务处理请求长时间等待的情况,提升各处理服务器整体的处理效率。
    116.下面参考图9,其示出了适于用来实现本公开的实施例的电子设备(例如图1中的处理服务器或控制服务器)900的结构示意图。图6示出的处理服务器或控制服务器仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
    117.如图9所示,电子设备900可以包括处理装置(例如中央处理器、图形处理器等)901,其可以根据存储在只读存储器(rom)902中的程序或者从存储装置908加载到随机访问存储器(ram)903中的程序而执行各种适当的动作和处理。在ram 903中,还存储有电子设备900操作所需的各种程序和数据。处理装置901、rom 902以及ram 903通过总线904彼此相连。输入/输出(i/o)接口905也连接至总线904。
    118.通常,以下装置可以连接至i/o接口905:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置906;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置907;包括例如磁带、硬盘等的存储装置908;以及通信装置909。通信装置909可以允许电子设备900与其他设备进行无线或有线通信以交换数据。虽然图9示出了具有各种装置的电子设备900,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图9中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
    119.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置909从网络上被下载和安装,或者从存储装置908被安装,或者从rom 902被安装。在该计算机程序被处理装置901执行时,执行本公开的实施例的方法中限定的上述功能。
    120.需要说明的是,本公开的实施例所述的计算机可读介质可以是计算机可读信号介
    质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
    121.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收控制服务器基于预设对应关系发送的任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;获取当前的负载信息,以及根据负载信息确定是否处理任务处理请求;响应于确定不处理任务处理请求,向控制服务器发送退回信息,以使控制服务器重新选取处理服务器完成任务处理请求的处理。或者,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:根据预设对应关系,向任务处理请求对应的处理服务器发送任务处理请求,其中,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系,以使所理服务器根据当前的负载信息确定是否处理任务处理请求;响应于接收到处理服务器发送的退回信息,重新选取处理服务器完成任务处理请求的处理,其中,退回信息用于指示处理服务器确定不处理任务处理请求。
    122.可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
    123.附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上
    可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
    124.描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收单元、确定单元和处理单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,确定单元还可以被描述为“获取当前的负载信息,以及根据负载信息确定是否处理任务处理请求的单元”。
    125.以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

    技术特征:
    1.一种任务处理方法,包括:接收控制服务器基于预设对应关系发送的任务处理请求,其中,所述对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;获取当前的负载信息,以及根据所述负载信息确定是否处理所述任务处理请求;响应于确定不处理所述任务处理请求,向所述控制服务器发送退回信息,以使所述控制服务器重新选取处理服务器完成所述任务处理请求的处理。2.根据权利要求1所述的方法,其中,所述负载信息包括任务处理池信息和任务等候队列信息;以及所述根据所述负载信息确定是否处理所述任务处理请求,包括:响应于确定所述任务处理池信息指示当前任务处理池已满,且响应于确定所述任务等候队列信息指示当前任务等候队列已满,确定不处理所述任务处理请求。3.根据权利要求1所述的方法,其中,所述负载信息包括长耗时任务数量;以及所述根据所述负载信息确定是否处理所述任务处理请求,包括:确定所述任务处理请求指示的待处理任务是否属于长耗时任务;响应于确定所述待处理任务属于长耗时任务,且响应于确定长耗时任务数量到达预设阈值,确定不处理所述任务处理请求。4.根据权利要求1所述的方法,其中,所述控制服务器根据处理服务器集中的处理服务器的当前负载信息,选取处理服务器完成所述任务处理请求的处理。5.一种任务处理方法,包括:根据预设对应关系,向任务处理请求对应的处理服务器发送所述任务处理请求,其中,所述对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系,以使所述处理服务器根据当前的负载信息确定是否处理所述任务处理请求;响应于接收到所述处理服务器发送的退回信息,重新选取处理服务器完成所述任务处理请求的处理,其中,所述退回信息用于指示所述处理服务器确定不处理所述任务处理请求。6.一种任务处理系统,包括控制服务器和至少两个处理服务器;所述控制服务器,根据预设对应关系,从所述至少两个处理服务器中选取任务处理请求对应的处理服务器,以及向选取的处理服务器发送所述任务处理请求,其中,所述对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;所述任务处理请求对应的处理服务器获取当前的负载信息,以及根据所述负载信息确定是否处理所述任务处理请求;响应于确定不处理所述任务处理请求,向所述控制服务器发送退回信息;所述控制服务器基于所述退回信息,从所述至少两个处理服务器包括的未被选取的处理服务器中选取处理服务器完成所述任务处理请求的处理。7.一种任务处理装置,包括:接收单元,被配置成接收控制服务器基于预设对应关系发送的任务处理请求,其中,所述对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;确定单元,被配置成获取当前的负载信息,以及根据所述负载信息确定是否处理所述任务处理请求;
    处理单元,被配置成响应于确定不处理所述任务处理请求,向所述控制服务器发送退回信息,以使所述控制服务器重新选取处理服务器完成所述任务处理请求的处理。8.一种任务处理装置,包括:发送单元,被配置成根据预设对应关系,向任务处理请求对应的处理服务器发送所述任务处理请求,其中,所述对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系,以使所述处理服务器根据当前的负载信息确定是否处理所述任务处理请求;选取单元,被配置成响应于接收到所述处理服务器发送的退回信息,重新选取处理服务器完成所述任务处理请求的处理,其中,所述退回信息用于指示所述处理服务器确定不处理所述任务处理请求。9.一种服务器,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的方法。10.一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-5中任一所述的方法。

    技术总结
    本公开的实施例公开了任务处理方法、装置和系统。该方法的一具体实施方式包括:接收控制服务器基于预设对应关系发送的任务处理请求,对应关系包括任务处理请求的位置信息与处理服务器之间的对应关系;获取当前的负载信息,以及根据负载信息确定是否处理任务处理请求;响应于确定不处理任务处理请求,向控制服务器发送退回信息,以使控制服务器重新选取处理服务器完成任务处理请求的处理。该实施方式实现了有助于保证处理服务器的负载均衡。实现了有助于保证处理服务器的负载均衡。实现了有助于保证处理服务器的负载均衡。


    技术研发人员:杨建 谢嗣涛
    受保护的技术使用者:京东科技信息技术有限公司
    技术研发日:2022.02.21
    技术公布日:2022/5/25
    转载请注明原文地址:https://tc.8miu.com/read-5470.html

    最新回复(0)