CN110688208A - 线性递增的任务处理方法、装置、计算机设备和存储介质 - Google Patents
线性递增的任务处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN110688208A CN110688208A CN201910846975.9A CN201910846975A CN110688208A CN 110688208 A CN110688208 A CN 110688208A CN 201910846975 A CN201910846975 A CN 201910846975A CN 110688208 A CN110688208 A CN 110688208A
- Authority
- CN
- China
- Prior art keywords
- task
- counter
- server
- queue
- task queue
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 28
- 238000000034 method Methods 0.000 claims abstract description 46
- 230000003247 decreasing effect Effects 0.000 claims description 3
- 238000013075 data extraction Methods 0.000 description 8
- 238000013500 data storage Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
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/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)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及大数据领域,本申请公开了一种线性递增的任务处理方法、装置、计算机设备和存储介质,所述方法包括:在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动;在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中;当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,根据当前计数器的数值进行当前任务的处理。本申请通过设置计数器,并为计数器设置递增速率,根据计数器的数值进行任务处理,能够控制任务处理的的平均速度,提高任务处理效率。
Description
技术领域
本申请涉及大数据领域,特别涉及一种线性递增的任务处理方法、装置、计算机设备和存储介质。
背景技术
随着信息技术的不断发展,计算机系统越来越庞大,越来越复杂,针对用户的业务也越来越多样化;对于服务端来说,大量用户的访问给服务器带来的不小的压力。随着业务系统用户量的增长,系统处理的任务越来越多,任务类型也比较复杂,包括数据提取、数据存储及数据计算等。如何才能让系统在复杂情况下也能够高效的处理任务提出了挑战,而目前的使用固定大小的缓存区接收和处理任务已经无法适应当前的环境,当任务超过缓存区大小限制,多余的请求就无法处理,因此无法应对突发的并发任务处理,导致系统处理任务效率低下。
发明内容
本申请的目的在于针对现有技术的不足,提供一种线性递增的任务处理方法、装置、计算机设备和存储介质,通过设置计数器,并为计数器设置递增速率,根据计数器的数值进行任务处理,能够控制任务处理的的平均速度,提高任务处理效率。
为达到上述目的,本申请的技术方案提供一种线性递增的任务处理方法、装置、计算机设备和存储介质。
本申请公开了一种线性递增的任务处理方法,包括以下步骤:
在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动;
在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中;
当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,当检测到当前计数器的数值不为0时,继续处理当前任务,并对当前计数器的数值进行递减,当检测到当前计数器的数值为0时,停止当前任务的处理。
较佳地,所述在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动,包括:
在服务器中设置多个计数器,并为每个计数器分配计数器ID;
为每个计数器预先设定递增速率,所述递增速率与每个计数器ID分别对应;
当所述服务器运行时,将每个计数器按各自对应的递增速率启动。
较佳地,所述在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中,包括:
在所述服务器中预先设置多个任务队列,并为每个任务队列分配任务队列ID;
将所述任务队列ID与所述计数器ID进行一一对应;
当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列中。
较佳地,所述当所述服务器运行时,将每个计数器按各自对应的递增速率启动,包括:
预先为每个计数器设置数值上限;
当所述服务器运行时,将每个计数器按各自对应的递增速率启动,当任一计数器的数值到达各自的数值上限时,停止递增。
较佳地,所述当所述服务器运行时,将每个计数器按各自对应的递增速率启动之后,包括:
获取统计时间段;
在所述统计时间段内统计每个任务队列的任务处理速率;
将每个任务队列的任务处理速率与各自对应的递增速率进行比较,当所述任务处理速率大于所述递增速率时,将所述任务处理速率替换所述递增速率。
较佳地,所述当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列中,包括:
当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列的尾部;
则当所述服务器处理所述任务队列中的任务时,所述方法还包括:
从所述任务队列的头部提取任务。
较佳地,所述当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,当检测到当前计数器的数值不为0时,继续处理当前任务,并对当前计数器的数值进行递减,当检测到当前计数器的数值为0时,停止当前任务的处理,包括:
预先设置每个任务队列的优先级及任务处理量比例;
当所述服务器处理所述任务队列中的任务时,按每个任务队列的优先级处理每个任务队列中的任务;
当任一任务队列的任务处理量达到对应的预先设置的任务处理量比例时,启动比当前任务队列低优先级的任务队列的任务的处理。
本申请还公开了一种线性递增的任务处理装置,所述装置包括:
计数模块:设置为在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动;
任务分配模块:设置为在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中;
任务处理模块:设置为当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,当检测到当前计数器的数值不为0时,继续处理当前任务,并对当前计数器的数值进行递减,当检测到当前计数器的数值为0时,停止当前任务的处理。
本申请还公开了一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被一个或多个所述处理器执行时,使得一个或多个所述处理器执行上述所述任务处理方法的步骤。
本申请还公开了一种存储介质,所述存储介质可被处理器读写,所述存储介质存储有计算机指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述任务处理方法的步骤。
本申请的有益效果是:本申请通过对服务器设置计数器,所述计数器的数值按预定的速率递增,服务器中任务的处理根据所述计数值进行,从而在低谷期可累计大量计数,高峰期可消耗大量计数,并通过限制任务处理的速度以此保证服务器能平稳处理大任务量,且可避免大量并发任务造成服务器的拥塞,提高任务处理效率。
附图说明
图1为本申请第一个实施例的一种线性递增的任务处理方法的流程示意图;
图2为本申请第二个实施例的一种线性递增的任务处理方法的流程示意图;
图3为本申请第三个实施例的一种线性递增的任务处理方法的流程示意图;
图4为本申请第四个实施例的一种线性递增的任务处理方法的流程示意图;
图5为本申请第五个实施例的一种线性递增的任务处理方法的流程示意图;
图6为本申请第六个实施例的一种线性递增的任务处理方法的流程示意图;
图7为本申请实施例的一种线性递增的任务处理装置结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
本申请第一个实施例的一种线性递增的任务处理方法流程如图1所示,本实施例包括以下步骤:
步骤s101,在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动;
具体的,在服务器处理任务前,可在服务器中设置计数器,对所述计数器进行初始化,初始值可设为0,并为所述计数器预先设定递增速率,例如,每秒钟增加10,即每次按照10的速率网上递增;当所述服务器运行时,所述计数器就开始启动,并按照预先设定的递增速率开始网上递增。
步骤s102,在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中;
具体的,可在所述服务器中预先设置至少一个任务队列,所述任务队列用于缓存即将到来的任务,当任务到达服务器时,可将所述任务放入预先设置的任务队列中等待服务器处理。
具体的,如果在所述服务器中只设置了一个任务队列,那么步骤s101中的计数器控制所述单个任务队列,如果在所述服务器中设置了多个任务队列,那么步骤s101中的计数器同时控制所述多个任务队列。
步骤s103,当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,当检测到当前计数器的数值不为0时,继续处理当前任务,并对当前计数器的数值进行递减,当检测到当前计数器的数值为0时,停止当前任务的处理。
具体的,当所述服务器开始处理存储在任务队列中的任务时,可先检测当前计数器的数值,如果检测到当前计数器的数值不为0时,可继续处理当前任务,并对当前计数器的数值减1,如果检测到当前计数器的数值为0时,不再对所述计数器的数值进行递减,并停止当前任务的处理,由于所述计数器有预定的递增速率,因此可等到下次服务器处理任务时再判断计数器的数值,然后决定是否要继续处理任务。
本实施例中,通过设置计数器,并为计数器设置递增速率,根据计数器的数值进行任务处理,能够控制任务处理的的平均速度,提高任务处理效率。
图2为本申请第二个实施例的一种线性递增的任务处理方法流程示意图,如图所示,所述步骤s101,在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动,包括:
步骤s201,在服务器中设置多个计数器,并为每个计数器分配计数器ID;
具体的,还可在服务器中设置多个计数器,每个计数器和服务器中的任务队列对应,为了便于区分,可为每个计数器分配计数器ID,每个计数器的计数器ID互不相同。
步骤s202,为每个计数器预先设定递增速率,所述递增速率与每个计数器ID分别对应;
具体的,当确定计数器的数目后,可为每个计数器预先设定各自的递增速率,并将所述递增速率与各自的计数器ID进行对应,例如,1号计数器的递增速率为每秒递增10,2号计数器的递增速率为每秒递增20,3号计数器的递增速率为每秒递增30。
步骤s203,当所述服务器运行时,将每个计数器按各自对应的递增速率启动。
具体的,当所述服务器运行时,可将服务器中的所有计数器启动,并将每个计数器按各自对应的递增速率启动。
本实施例中,通过设置多个计数器,并每个计数器设置不同的速率,可以有效提高任务处理的效率。
图3为本申请第三个实施例的一种线性递增的任务处理方法流程示意图,如图所示,所述步骤s102,在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中,包括:
步骤s301,在所述服务器中预先设置多个任务队列,并为每个任务队列分配任务队列ID;
具体的,当在步骤s201中设置多个计数器后,可在服务器中设置与所述计数器相同数目的任务队列,并为每个任务队列分配任务队列ID,用以区分不同的任务队列,所述任务队列可根据数据处理的类型进行设置,例如,可分别设置数据存储、数据提取及数据计算3个任务队列,并分别给这3个任务队列分配ID为1号,2号和3号。
步骤s302,将所述任务队列ID与所述计数器ID进行一一对应;
具体的,当每个任务队列分配到各自的任务队列ID后,可将所述任务队列ID与所述计数器ID进行一一对应,例如,1号任务队列对应1号计数器,2号任务队列对应2号计数器,3号任务队列对应3号计数器。
步骤s303,当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列中。
具体的,当任务到达所述服务器时,首先检测所述任务的类型,所述任务的类型与数据处理的类型对应,当检测到任务的类型后,可根据所述任务的类型找到匹配的任务队列ID,然后将所述任务放入对应的任务队列中。
本实施例中,通过将计数器与任务队列进行一一对应,可以有效提高每个任务队列中任务处理的效率。
图4为本申请第四个实施例的一种线性递增的任务处理方法流程示意图,如图所示,所述步骤s203,当所述服务器运行时,将每个计数器按各自对应的递增速率启动,包括:
步骤s401,预先为每个计数器设置数值上限;
具体的,由于服务器有处理极限,因此可对每个计数器设置数值上限,当每个计数器的数值递增到各自对应的数值上限后,停止递增。
步骤s402,当所述服务器运行时,将每个计数器按各自对应的递增速率启动,当任一计数器的数值到达各自的数值上限时,停止递增。
具体的,当所述服务器运行时,可将每个计数器按各自对应的递增速率启动,并监控每个计数器的当前数值,当监控到任一计数器的当前数值到达对应的数值上限时,停止递增,由于在服务器处理任务时,所述计数器的数值会进行递减,因此可在计数器的数值小于所述数值上限后,再进行递增。
本实施例中,通过对计数器设置数值上限,可有效避免任务处理量过大导致系统崩溃。
图5为本申请第五个实施例的一种线性递增的任务处理方法流程示意图,如图所示,所述步骤s203,当所述服务器运行时,将每个计数器按各自对应的递增速率启动之后,包括:
步骤s501,获取统计时间段;
具体的,在所述服务器的运行时间内,可选取一个统计时间段,所述统计时间段用以统计所述时间段内每个任务队列的任务处理量,例如,前5分钟或者前半小时内,1号任务队列处理了多少任务。
步骤s502,在所述统计时间段内统计每个任务队列的任务处理速率;
具体的,当获取到每个任务队列的任务处理量后,根据获取的统计时间段,就可以统计出每个任务队列的任务处理速率,例如,5分钟内1号任务队列处理了3000个任务,那么1号任务队列的任务处理速率是每秒10个任务。
步骤s503,将每个任务队列的任务处理速率与各自对应的递增速率进行比较,当所述任务处理速率大于所述递增速率时,将所述任务处理速率替换所述递增速率。
具体的,可将获取的每个任务队列的任务处理速率与各自对应的递增速率进行比较,如果所述任务处理速率大于所述递增速率时,将所述任务处理速率替换所述递增速率,防止计数器递增速率太慢来不及任务处理。
本实施例中,通过统计时间段内的任务处理速率,并调整计数器的递增速率,可有效提高任务处理效率。
在一个实施例中,所述步骤s303,当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列中,包括:
当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列的尾部;
则当所述服务器处理所述任务队列中的任务时,还包括:
从所述任务队列的头部提取任务。
具体的,当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列的尾部,所述将所述任务放入对应的任务队列的尾部指的是将任务按照到达服务器的时间顺序进行存储。
具体的,当所述服务器处理所述任务队列中的任务时,可随机的从任务队列中提取任务进行处理,也可从所述任务队列的头部提取任务进行处理。
本实施例中,通过将任务放在每个任务队列的队尾,并在服务器处理任务时从队头提取任务,可以避免挤压大量旧任务,提高任务处理效率。
图6为本申请第六个实施例的一种线性递增的任务处理方法流程示意图,如图所示,所述步骤s103,当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,当检测到当前计数器的数值不为0时,继续处理当前任务,并对当前计数器的数值进行递减,当检测到当前计数器的数值为0时,停止当前任务的处理,包括:
步骤s601,预先设置每个任务队列的优先级及任务处理量比例;
具体的,在服务器处理任务前,可预先设置每个任务队列的优先级及任务处理量比例,所述任务队列的优先级可根据任务类型的重要性进行划分,例如,数据存储的优先级高于数据提取的优先级,数据提取的优先级高于数据计算的优先级;为了避免高优先级的任务队列长期占用服务器资源,低优先级的任务队列无法处理任务的情况发生,可对每个任务队列设置任务处理量比例,所述任务处理量比例指的是每个任务队列处理的任务量占服务器最大处理量的比例,例如,假设服务器的最大处理量是1000,那么可将数据存储任务队列的任务处理量比例设为50%,即可处理500个任务,数据提取任务队列的任务处理量比例设为30%,数据计算任务队列的任务处理量比例设为20%。
步骤s602,当所述服务器处理所述任务队列中的任务时,按每个任务队列的优先级处理每个任务队列中的任务;
具体的,当所述服务器处理所述任务队列中的任务时,可按照每个任务队列的优先级处理每个任务队列中的任务,当高优先级的任务队列中的任务没有处理完之前,不能处理低优先级的任务队列中的任务。
步骤s603,当任一任务队列的任务处理量达到对应的预先设置的任务处理量比例时,启动比当前任务队列低优先级的任务队列的任务的处理。
具体的,当任一任务队列的任务处理量达到对应的预先设置的任务处理量比例时,可启动比当前任务队列低优先级的任务队列的任务的处理,例如,当高优先级的数据存储任务队列的任务处理量达到500时,可启动比数据存储任务队列低一个优先级的数据提取任务队列的任务的处理;同样的,当数据提取任务队列的任务处理量达到300时,可接着启动比数据提取任务队列低一个优先级的数据计算任务队列的任务的处理。
本实施例中,通过对每个任务队列设置优先级及任务处理量比例,并根据优先级及任务处理量比例分配任务,可以有效提高任务处理效率。
本申请实施例的一种线性递增的任务处理装置结构如图7所示,包括:
计数模块701、任务分配模块702及任务处理模块703;其中,计数模块701与任务分配模块702相连,任务分配模块702与任务处理模块703相连;计数模块701设置为在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动;任务分配模块702设置为在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中;任务处理模块703设置为当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,当检测到当前计数器的数值不为0时,继续处理当前任务,并对当前计数器的数值进行递减,当检测到当前计数器的数值为0时,停止当前任务的处理。
本申请实施例还公开了一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被一个或多个所述处理器执行时,使得一个或多个所述处理器执行上述各实施例中所述任务处理方法中的步骤。
本申请实施例还公开了一种存储介质,所述存储介质可被处理器读写,所述存储器存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例中所述任务处理方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种线性递增的任务处理方法,其特征在于,包括以下步骤:
在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动;
在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中;
当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,当检测到当前计数器的数值不为0时,继续处理当前任务,并对当前计数器的数值进行递减,当检测到当前计数器的数值为0时,停止当前任务的处理。
2.如权利要求1所述的线性递增的任务处理方法,其特征在于,所述在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动,包括:
在服务器中设置多个计数器,并为每个计数器分配计数器ID;
为每个计数器预先设定递增速率,所述递增速率与每个计数器ID分别对应;
当所述服务器运行时,将每个计数器按各自对应的递增速率启动。
3.如权利要求2所述的线性递增的任务处理方法,其特征在于,所述在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中,包括:
在所述服务器中预先设置多个任务队列,并为每个任务队列分配任务队列ID;
将所述任务队列ID与所述计数器ID进行一一对应;
当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列中。
4.如权利要求2所述的线性递增的任务处理方法,其特征在于,所述当所述服务器运行时,将每个计数器按各自对应的递增速率启动,包括:
预先为每个计数器设置数值上限;
当所述服务器运行时,将每个计数器按各自对应的递增速率启动,当任一计数器的数值到达各自的数值上限时,停止递增。
5.如权利要求2所述的线性递增的任务处理方法,其特征在于,所述当所述服务器运行时,将每个计数器按各自对应的递增速率启动之后,包括:
获取统计时间段;
在所述统计时间段内统计每个任务队列的任务处理速率;
将每个任务队列的任务处理速率与各自对应的递增速率进行比较,当所述任务处理速率大于所述递增速率时,将所述任务处理速率替换所述递增速率。
6.如权利要求3所述的线性递增的任务处理方法,其特征在于,所述当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列中,包括:
当任务到达所述服务器时,检测所述任务的类型,根据所述任务的类型获得任务队列ID,并根据所述任务队列ID将所述任务放入对应的任务队列的尾部;
则当所述服务器处理所述任务队列中的任务时,所述方法还包括:
从所述任务队列的头部提取任务。
7.如权利要求3所述的线性递增的任务处理方法,其特征在于,所述当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,当检测到当前计数器的数值不为0时,继续处理当前任务,并对当前计数器的数值进行递减,当检测到当前计数器的数值为0时,停止当前任务的处理,包括:
预先设置每个任务队列的优先级及任务处理量比例;
当所述服务器处理所述任务队列中的任务时,按每个任务队列的优先级处理每个任务队列中的任务;
当任一任务队列的任务处理量达到对应的预先设置的任务处理量比例时,启动比当前任务队列低优先级的任务队列的任务的处理。
8.一种线性递增的任务处理装置,其特征在于,所述装置包括:
计数模块:设置为在服务器中设置计数器,并为所述计数器预先设定递增速率,当所述服务器运行时,将所述计数器按所述预定递增速率启动;
任务分配模块:设置为在所述服务器中预先设置任务队列,并当任务到达所述服务器时,将所述任务放入预先设置的任务队列中;
任务处理模块:设置为当所述服务器处理所述任务队列中的任务时,检测当前计数器的数值,当检测到当前计数器的数值不为0时,继续处理当前任务,并对当前计数器的数值进行递减,当检测到当前计数器的数值为0时,停止当前任务的处理。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被一个或多个所述处理器执行时,使得一个或多个所述处理器执行如权利要求1至7中任一项所述任务处理方法的步骤。
10.一种存储介质,其特征在于,所述存储介质可被处理器读写,所述存储介质存储有计算机指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至7中任一项所述任务处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910846975.9A CN110688208A (zh) | 2019-09-09 | 2019-09-09 | 线性递增的任务处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910846975.9A CN110688208A (zh) | 2019-09-09 | 2019-09-09 | 线性递增的任务处理方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110688208A true CN110688208A (zh) | 2020-01-14 |
Family
ID=69108847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910846975.9A Pending CN110688208A (zh) | 2019-09-09 | 2019-09-09 | 线性递增的任务处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110688208A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760991A (zh) * | 2021-03-25 | 2021-12-07 | 北京京东拓先科技有限公司 | 数据操作方法、装置、电子设备和计算机可读介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040062259A1 (en) * | 2002-09-27 | 2004-04-01 | International Business Machines Corporation | Token-based active queue management |
CN102724103A (zh) * | 2011-03-30 | 2012-10-10 | 国际商业机器公司 | 代理服务器、分层次网络系统及分布式工作负载管理方法 |
CN105117284A (zh) * | 2015-09-09 | 2015-12-02 | 厦门雅迅网络股份有限公司 | 一种基于优先级比例队列的工作线程的调度方法 |
CN105763478A (zh) * | 2015-12-21 | 2016-07-13 | 中国电子科技集团公司第十五研究所 | 基于令牌桶算法的卫星数据地面传输网络流量控制系统 |
CN109314673A (zh) * | 2017-04-24 | 2019-02-05 | 华为技术有限公司 | 一种客户业务传输方法和装置 |
CN109672627A (zh) * | 2018-09-26 | 2019-04-23 | 深圳壹账通智能科技有限公司 | 基于集群服务器的业务处理方法、平台、设备及存储介质 |
CN109684089A (zh) * | 2018-12-18 | 2019-04-26 | 创新奇智(广州)科技有限公司 | 一种基于预测模型的任务调度方法、系统及电子设备 |
-
2019
- 2019-09-09 CN CN201910846975.9A patent/CN110688208A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040062259A1 (en) * | 2002-09-27 | 2004-04-01 | International Business Machines Corporation | Token-based active queue management |
CN102724103A (zh) * | 2011-03-30 | 2012-10-10 | 国际商业机器公司 | 代理服务器、分层次网络系统及分布式工作负载管理方法 |
CN105117284A (zh) * | 2015-09-09 | 2015-12-02 | 厦门雅迅网络股份有限公司 | 一种基于优先级比例队列的工作线程的调度方法 |
CN105763478A (zh) * | 2015-12-21 | 2016-07-13 | 中国电子科技集团公司第十五研究所 | 基于令牌桶算法的卫星数据地面传输网络流量控制系统 |
CN109314673A (zh) * | 2017-04-24 | 2019-02-05 | 华为技术有限公司 | 一种客户业务传输方法和装置 |
CN109672627A (zh) * | 2018-09-26 | 2019-04-23 | 深圳壹账通智能科技有限公司 | 基于集群服务器的业务处理方法、平台、设备及存储介质 |
CN109684089A (zh) * | 2018-12-18 | 2019-04-26 | 创新奇智(广州)科技有限公司 | 一种基于预测模型的任务调度方法、系统及电子设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760991A (zh) * | 2021-03-25 | 2021-12-07 | 北京京东拓先科技有限公司 | 数据操作方法、装置、电子设备和计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107423120B (zh) | 任务调度方法及装置 | |
CN106557369B (zh) | 一种多线程的管理方法及系统 | |
CN109086135B (zh) | 资源伸缩方法、装置、计算机设备及存储介质 | |
US20160378557A1 (en) | Task allocation determination apparatus, control method, and program | |
CN108681481B (zh) | 业务请求的处理方法及装置 | |
CN107704322B (zh) | 请求分配方法及装置 | |
CN111488135A (zh) | 高并发系统的限流方法、装置、存储介质及设备 | |
CN104518987A (zh) | 并行多线程报文处理的方法和装置 | |
US20190332328A1 (en) | Storage Controller and IO Request Processing Method | |
CN110716800B (zh) | 任务调度方法及装置、存储介质及电子设备 | |
CN112579263A (zh) | 任务执行方法及装置、存储介质及电子设备 | |
CN111061570B (zh) | 一种图像计算请求处理方法、装置及终端设备 | |
CN110674064B (zh) | 一种数据传输方法、装置、设备及计算机可读存储介质 | |
CN102799487A (zh) | 基于阵列/lun的io调度方法及装置 | |
CN112632363A (zh) | 批量查询请求的处理方法、装置、设备及可读存储介质 | |
CN110688208A (zh) | 线性递增的任务处理方法、装置、计算机设备和存储介质 | |
CN109670932B (zh) | 信贷数据核算方法、装置、系统和计算机存储介质 | |
CN101625650A (zh) | 具有包括多个内核的处理器的计算机系统及其控制方法 | |
CN109062514B (zh) | 一种基于命名空间的带宽控制方法、装置和存储介质 | |
CN109284193B (zh) | 一种基于多线程的分布式数据处理方法及服务器 | |
US8108871B2 (en) | Controlling computer resource utilization | |
CN108139969B (zh) | 一种内存配置方法、装置及系统 | |
US20140047454A1 (en) | Load balancing in an sap system | |
CN109358961B (zh) | 一种资源调度方法及其装置和具有存储功能的装置 | |
CN107239543A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200114 |