CN108574645B - 一种队列调度方法及装置 - Google Patents
一种队列调度方法及装置 Download PDFInfo
- Publication number
- CN108574645B CN108574645B CN201710149931.1A CN201710149931A CN108574645B CN 108574645 B CN108574645 B CN 108574645B CN 201710149931 A CN201710149931 A CN 201710149931A CN 108574645 B CN108574645 B CN 108574645B
- Authority
- CN
- China
- Prior art keywords
- queue
- physical
- user
- physical queue
- queues
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012545 processing Methods 0.000 claims abstract description 42
- 238000012544 monitoring process Methods 0.000 claims abstract description 17
- 238000004519 manufacturing process Methods 0.000 claims description 17
- 238000013461 design Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 16
- 238000005192 partition Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000001960 triggered effect Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000013468 resource allocation Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 239000000306 component Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/522—Dynamic queue service slot or variable bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/527—Quantum based scheduling, e.g. credit or deficit based scheduling or token bank
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
一种队列调度方法及装置,用以解决现有技术中存在用户队列占用固定的队列资源导致资源利用率不高的问题。该方法包括:在每个监控时间点采集与第一物理队列具有绑定关系的N个用户队列的运行参数值,根据运行参数值获得第一物理队列的运行统计结果,当第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,其中,目标物理队列是指在第一队列资源池中处理能力高于第一物理队列组的物理队列组中的一个物理队列。因此,采用本申请实施例提供的方法,不在创建队列时固化队列资源,根据运行统计结果调整绑定关系,有效提高资源利用率。
Description
技术领域
本申请涉及云计算技术领域,特别涉及一种队列调度方法及装置。
背景技术
消息队列是实现业务之间消息处理的一种中间件技术,通常包括例如事件通知、服务请求之类的信息,用来协调不同系统或业务模块之间的数据交换和消息通信。消息队列作为一种信息系统常用的基础服务,可实现“生产”过程和“消费”过程的解耦,提高系统响应速度,削峰填谷,广泛用于订单、日志、告警、流计算、任务调度等业务场景。如Kafka、RabbitMQ、ActiveMQ等都是常见的消息队列系统。
消息服务目前已经成为主流云服务提供商的基础服务之一,在很多的互联网应用和企业应用中扮演越来越总重要的角色,主要用在以下几个场景中:
(1)业务解耦:将业务中依赖其他系统同时属于非核心或不重要的部分使用消息通知即可,无需同步等待其他系统的处理结果。例如,电商网站的产品订单处理,可以把订单信息放入消息队列,出库、发货等后续会从队列里读取任务信息然后执行。
(2)数据最终一致性:用于两个系统的状态最终保持一致,或都成功或都失败。如交易系统的高可靠通知,实现跨系统的事务最终一致,降低实现成本。在电子商城抢购手机,用户使用了优惠券,在下单后,优惠券系统要锁定该优惠券,库存系统要将库存减一,锁定优惠券与减库存是由两个不同的系统完成的,执行时可能失败,但数据必须一致。使用消息队列系统,当某一个动作失败了,比如锁定优惠券失败了,向消息队列中发送一条“订单失败”的消息,另一个系统接收到这个消息后就可以做回退操作,把库存加一,这样实现数据最终一致性。
(3)错峰流控:上下游系统处理能力有差异时,可以使用消息服务转储系统之间的通信数据,提供消息堆积能力,在下游系统有能力处理消息的时候再处理,减少由于处理能力的差异导致的拥塞、等待等问题,降低系统的复杂性。
(4)日志同步:应用通过可靠异步方式将日志消息同步到消息服务,再通过其他组件对日志做实时或离线分析,也可用于关键日志信息收集进行应用监控。
在云计算环境下,受到物理资源规模和成本等因素限制,消息队列系统可以支持的队列数量是有限的,单个队列可以支持的请求数、吞吐量、消息数量也是有限的,为了响应海量用户的队列访问请求,必须探索提升消息队列系统资源利用效率的方法。
现有的消息队列系统中,用户队列采用静态队列资源分配方式。具体的,用户创建队列时,系统会为其分配对应的队列资源,因此队列资源在队列创建时确定,用户基于该队列资源生产消息和消费消息,该队列资源被该用户独占。如图1所示,队列1、队列2、队列3、队列4在队列建立时就分配好相应的队列资源,因此,采用静态队列资源分配模型,用户队列与物理资源具有耦合性,无论用户队列对应的消息请求数、吞吐量、消息数量等参数的实际情况如何,都会占用一个固定的队列资源,在云环境下,存在大量的租户,需要同时创建多个用户队列,而系统可以支持的队列数目有限,限制了云服务的规模,资源利用效率不高。
发明内容
本申请实施例提供一种队列调度方法及装置,用以解决现有技术中存在用户队列占用固定的队列资源导致资源利用率不高的问题。
第一方面,本申请实施例提供一种队列调度方法,方法应用于消息队列系统,消息队列系统包括至少一种队列类型的队列资源池,每个队列资源池包括至少两个不同处理能力的物理队列组,每个物理队列组包括至少一个物理队列,包括:在每个监控时间点采集与第一物理队列具有绑定关系的N个用户队列的运行参数值,根据运行参数值获得第一物理队列的运行统计结果,其中,第一物理队列归属于第一队列资源池中第一物理队列组,第一队列资源池为消息队列系统中的任一队列资源池,第一物理队列组为第一队列资源池中的任一物理队列组,N为正整数;当第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,其中,目标物理队列是指在第一队列资源池中处理能力高于第一物理队列组的物理队列组中的一个物理队列。因此,相较于现有技术中用户队列在创建队列时就占用固定的队列资源导致资源利用率不高的问题,采用本申请实施例提供的方法,不在创建队列时固化队列资源,采集每个用户队列的运行参数值,监控各个物理的运行统计结果,当某一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与该物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,有效提升了资源利用率,且初始投资较低,在用户队列刚刚上线时,不需要提前做精确的资源规划,可以随着用户队列的实际运行情况逐渐为其调整绑定的物理队列。
在一种可能的设计中,N个用户队列的队列类型均与第一队列资源池的队列类型相同。因此,在为用户队列分配队列资源池时,根据该用户队列的队列类型确定分配到哪个队列资源池,使系统的整体性能更高,资源利用合理性提高。
在一种可能的设计中,还包括:当第一物理队列的运行统计结果中包括的预设统计参数值小于等于第二阈值时,允许为第一物理队列绑定新的用户队列,第一阈值大于第二阈值。因此,有效提高资源利用率,此外,当物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,还可当对该物理队列进行扩容。
在一种可能的设计中,当第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,包括:在首次确定预设统计参数值大于第一阈值之后,继续统计后续M个连续监测时间点对应的M个预设统计参数值,M为正整数;当M个预设统计参数值中K个预设统计参数值均大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,K为正整数。因此,如果仅根据一次预设统计参数值大于第一阈值计算结果就触发重新绑定过程,可能会触发大量的重新绑定过程,其中某些重新绑定过程是不需要的,可能严重影响系统整体性能。为了避免上述情况的发生,采用本申请实施例提供的方法,能够有效避免不必要的重复绑定过程,提高系统的稳定性。
在一种可能的设计中,预设统计参数值为第一物理队列的数据吞吐量或第一物理队列的消息请求数。因此,本申请实施例提供了多种预设统计参数值,用以判断是否需要对与当前物理队列具有绑定关系的用户队列进行重新绑定。
在一种可能的设计中,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,包括:从与第一物理队列具有绑定关系的N个用户队列中选择吞吐量从大到小或消息请求数从大到小的前S个用户队列重新绑定至目标物理队列,S为正整数。因此,采用本申请实施例提供的方法可将对第一物理队列负载影响较大的用户队列重新绑定至目标物理队列,提升资源利用率。
在一种可能的设计中,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,包括:针对与第一物理队列具有绑定关系的至少一个用户队列中的第i个用户队列,第i个用户队列为至少一个用户队列中的任一队列,执行:将第i个用户队列的状态参数从第一状态设置为第二状态,第一状态用于指示第i个用户队列处于正常绑定状态,第二状态用于指示第i个用户队列处于重新绑定状态;将针对第i个用户队列的生产消息请求发送至目标物理队列;将针对第i个用户队列的消费消息请求发送至第一物理队列,直至读出第i个用户队列在第一物理队列中存储的全部消息;在读出第i个用户队列在第一物理队列中存储的全部消息后,将针对第i个用户队列的消费消息请求发送至目标物理队列;将第i个用户队列的状态参数从第二状态设置为第一状态。因此,采用本申请实施例提供的方法,避免了重新绑定过程中消息处理出现混乱,保证了消息队列系统的正常运行。
第二方面,本申请提供一种队列调度装置,用于执行上述第一方面或第一方面的任意可能的设计的方法。具体地,该装置包括用于执行上述第一方面或第一方面的任意可能的设计的方法的单元。
第三方面,本申请提供一种服务器,包括通信接口、处理器和存储器。其中,通信接口、处理器以及所述存储器之间可以通过总线系统相连。该存储器用于存储程序、指令或代码,所述处理器用于执行所述存储器中的程序、指令或代码,以完成上述第一方面或第一方面的任意可能的实现方式中的方法。
第四方面,本申请提供了一种消息队列系统,包括:物理存储层,元数据管理器,如第三方面所述的资源调度器和访问接口层。
第五方面,本申请提供了一种计算机可读存储介质或者计算机程序产品,用于存储计算机程序,该计算机程序用于执行上述第一方面或第一方面的任意可能的实现方式中的方法的指令。
附图说明
图1为本申请背景技术中静态队列资源分配模型;
图2为本申请实施例中消息队列系统的架构图;
图3为本申请实施例中队列资源池划分示意图;
图4为本申请实施例中任一队列资源池中物理队列组的划分示意图;
图5为本申请实施例中队列调度方法的概述流程图;
图6为本申请实施例中队列调度方法的具体流程图;
图7为本申请实施例中队列调度装置的结构示意图之一;
图8为本申请实施例中队列调度装置的结构示意图之二;
图9为本申请实施例中服务器的结构示意图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。
如图2所示为本申请实施例中消息队列系统的架构图。消息队列系统包括:物理存储层,元数据管理器,资源调度器和访问接口层。
物理存储层包括多个用于保存物理队列的节点,例如,队列服务器(Broker),这里的每个节点可以是物理机,也可以是虚拟机,可以根据实际需要扩展节点数目,例如,多个节点组成的Broker集群系统。物理存储层的资源首先根据队列类型划分为一个或多个队列资源池,例如,如图3所示,图中包括三个队列资源池,分别为高可靠队列资源池、高性能队列资源池、相对可靠队列资源池,分别用于保存不同队列类型的队列的消息。基于队列类型划分队列资源池,可以将相同类型的队列组织在一起,而不是由一个单一的队列资源池满足不同(有时甚至是冲突的)要求,使系统的整体性能更高,资源利用合理性提高。用户队列创建时,会根据其配置的队列类型确定分配到哪个队列资源池中,这是静态分配方式。因此,用户队列的队列类型与所在队列资源池的队列类型相同。在用户队列的队列类型不发生变更时,用户队列不会在不同的队列资源池间迁移。
应理解的是,在特定业务场景下,物理存储层的资源可以只作为一个队列资源池,即仅支持一种队列类型,例如,仅支持高可靠队列类型的高可靠队列资源池或仅支持高吞吐队列类型的高吞吐队列资源池。
元数据管理器又称元数据服务器集群,可以包括多台元数据服务器(MetaServer),用于保存用户队列的队列类型、用户队列与物理队列绑定关系、队列资源池配置信息等元数据信息。例如,元数据管理器可以采用关系数据库或NoSQL数据库来实现。
资源调度器是本申请实施例中的核心部件,,可以包括多台调度服务器(Scheduler Server),用于实现如图5所示的队列调度方法,以及建立用户队列与物理队列绑定关系和采集用户队列的运行参数值等。其中,资源调度器可以独立部署,也可以和访问服务器共同部署在一个节点,或,资源调度器与元数据管理器位于同一个节点上。资源调度器可以是物理机或虚拟机。
应理解的是,同一个队列资源池内的各个物理队列也具有相同的队列类型,对外提供近似的服务能力。用户队列在被分配至与自身的队列类型相同的队列资源池后,可以根据最小负载优先算法,选择一个当前负载最低的物理队列,建立用户队列与物理队列的绑定关系。须知,本申请实施例不对用户队列选择物理队列的算法作具体限定。
应理解的是,消息队列系统会预先分配每个物理队列的资源,所以物理队列存在时可能还没有与用户队列建立绑定关系。此外,还可根据物理资源配置单物理队列最大用户队列容量等其他参数。
访问接口层是用户访问消息队列系统服务的入口,可以包括多台接入服务器(Access Server),用于根据用户需求创建队列、删除队列、生产消息、消费消息等。
在本申请实施例中,用户队列是指面向用户的、用于生产消息和消费消息的队列对象,也可称之为虚拟队列,逻辑队列,在本申请实施例中不直接为用户队列分配物理资源。物理队列是消息的实际载体,每个队列资源池包括至少两个不同处理能力的物理队列组,每个物理队列组包括至少一个物理队列,物理队列组内的物理队列数量会根据系统的实际需求进行动态扩展,这里的不同处理能力的物理队列组可以是根据物理队列的分区数目不同划分的,例如,如图4所示,基于三种不同的分区将队列资源池中的物理队列划分成三个物理队列组,分区数越高,并发处理能力越强。
参阅图5所示,本申请实施例提供一种队列调度方法,该方法应用于上述消息队列系统,消息队列系统包括至少一种队列类型的队列资源池,每个队列资源池包括至少两个不同处理能力的物理队列组,每个物理队列组包括至少一个物理队列,该方法包括:
步骤500:在每个监控时间点采集与第一物理队列具有绑定关系的N个用户队列的运行参数值,根据运行参数值获得第一物理队列的运行统计结果。
其中,第一物理队列归属于第一队列资源池中第一物理队列组,第一队列资源池为消息队列系统中的任一队列资源池,第一物理队列组为第一队列资源池中的任一物理队列组,N为正整数。
步骤510:当第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列。
其中,目标物理队列是指在第一队列资源池中处理能力高于第一物理队列组的物理队列组中的一个物理队列。
在一种可能的设计中。预设统计参数值为第一物理队列的数据吞吐量或第一物理队列的消息请求数。
在消息队列系统中,每次生产消息或消费消息都会调用生产消息接口或消费消息接口,一次调用就是一次请求,通常是以每秒钟的请求数进行度量,数值越大对队列系统的处理能的要求越高。
例如,第一物理队列最多每秒钟可以处理3万次请求,第一阈值设置为3万次请求的70%(即21000次消息请求),现在与第一物理队列建立绑定关系的某个用户队列每秒钟的请求就到了2万5千次,超过21000次,此时可将该队列重新绑定至最多每秒钟可以处理10万次请求的物理队列上。此时,最多每秒钟可以处理10万次请求的物理队列为第一资源池中能够处理10万次请求的物理队列组中的一个物理队列。
针对步骤500,在每个监控时间点采集与第一物理队列具有绑定关系的N个用户队列的运行参数值,针对每个用户队列可以包括但不限于以下参数的参数值:生产消息请求数量、消费消息请求数量、平均消息大小、用户队列消息数据吞吐量、生产并发数、消费并发数、消息生产速率、消息消费速率、消息堆积数等。
其中,用户队列消息数据吞吐量=生产消息请求数量×平均消息大小+消费消息请求数量×平均消息大小。
此外,还可根据上述参数求得用户队列请求数量,用户队列请求数量=生产消息请求数量+消费消息请求数量。
这里的监控时间点可以以1分钟、15分钟、1小时等为单位采集上述参数的参数值。
针对步骤500,根据运行参数值获得第一物理队列的运行统计结果,可以包括但不限于以下运行统计结果:物理队列数据吞吐量、物理队列消息请求数、单用户队列最大请求数量、单用户队列最大消息数据吞吐量等。
例如,假设第一物理队列与N个用户队列具有绑定关系,每隔1分钟采集针对每个用户队列的生产消息请求数量、消费消息请求数量、平均消息大小,计算相应队列的用户队列消息数据吞吐量和用户队列请求数量。进一步地,根据获得的N个用户队列的运行参数值,可以筛选出N个用户队列中单用户队列最大请求数量和单用户队列最大消息数据吞吐量,计算N个用户队列消息数据吞吐量之和作为第一物理队列的数据吞吐量,计算N个用户队列请求数量之和作为第一物理队列的消息请求数。
此外,针对每个物理队列组还可以统计单物理队列最大请求数量、单物理队列最大消息数据吞吐量、单物理队列最低请求数量、单物理队列最低消息数据吞吐量等。针对每个资源池还可以统计队列组最大请求数量、队列组最大消息数据吞吐量等。
在一种可能的设计中,针对步骤510,在将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列时,其中,这里至少一个用户队列的选择可以采用但不限于以下方法:
从与第一物理队列具有绑定关系的N个用户队列中选择吞吐量从大到小或消息请求数从大到小的前S个用户队列重新绑定至目标物理队列,S为正整数。
在一种可能的设计中,以与第一物理队列具有绑定关系的至少一个用户队列中的第i个用户队列为例,第i个用户队列为至少一个用户队列中的任一队列,将第i个用户队列重新绑定至目标物理队列的具体步骤如下:
首先,将第i个用户队列的状态参数从第一状态设置为第二状态,第一状态用于指示第i个用户队列处于正常绑定状态,第二状态用于指示第i个用户队列处于重新绑定状态。
然后,将针对第i个用户队列的生产消息请求发送至目标物理队列,即不再将针对第i个用户队列的生产消息请求存储至第一物理队列,而是存储至目标物理队列,因此,第一物理队列不会再接收到新的生产消息请求。
同时,由于第一物理队列中还存储有第i个用户队列的消息,所以需要将第i个用户队列在第一物理队列中存储的全部消息读出,具体的,将针对第i个用户队列的消费消息请求发送至第一物理队列,直至读出第i个用户队列在第一物理队列中存储的全部消息,此时,第一物理队列中不再存储有第i个用户队列的消息,因此,后续的针对第i个用户队列的消费消息请求需发送至目标物理队列。
最后,将第i个用户队列的状态参数从第二状态设置为第一状态。
此外,还需将第i个用户队列与目标物理队列的绑定关系记录下来,并删除之前记录的第i个用户队列与第一物理队列的绑定关系,具体的,这些绑定关系信息可以记录在如图2所示的元数据管理器中。
此外,针对步骤510,如果仅根据一次预设统计参数值大于第一阈值计算结果就触发重新绑定过程,可能会触发大量的重新绑定过程,其中某些重新绑定过程是不需要的,可能严重影响系统整体性能。因此,为了避免上述情况的发生,可以采用但限于以下方法:
在首次确定预设统计参数值大于第一阈值之后,继续统计后续M个连续监测时间点对应的M个预设统计参数值,M为正整数,当M个预设统计参数值中K个预设统计参数值均大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,K为正整数。
例如,7个预设统计参数值均大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,或者,7个预设统计参数值中的3个预设统计参数值均大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,这里可以理解为快速重新绑定策略,又或者,15个预设统计参数值均大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,这里可以理解为慢速重新绑定策略,因此,上述方法中的M和K可以根据实际情况灵活配置。
应理解的是,如果不存在满足条件的目标物理队列,例如,当前第一物理队列就已经为第一队列资源池中处理能力最高的物理队列,在第一队列资源池中没有处理能力高于第一物理队列组的物理队列,那么此时可以在第一队列资源池中新建一个更高处理能力的物理队列组,例如,更高分区数的物理队列组,并为该新物理队列组分配新的物理队列,然后再将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至该新物理队列组中的一个物理队列中。
应理解的是,当第一物理队列的运行统计结果中包括的预设统计参数值小于等于预设最低阈值时,还可以将与第一物理队列具有绑定关系的用户队列重新绑定至第一队列资源池中处理能力低于第一物理队列组的物理队列组中的一个物理队列。
例如,第一物理队列最多每秒钟可以处理3万次请求,预设最低阈值设置为3万次请求的10%(即3000次消息请求),当第一物理队列每秒钟的请求数不足3000次,且在后续M个连续监测时间点对应的M个预设统计参数值中K个预设统计参数值均小于等于3000次时,此时可将第一物理队列中的用户队列重新绑定至第一队列资源池中处理能力低于第一物理队列组的物理队列组中的一个物理队列,并释放第一物理队列占用的物理资源。
须知,上述所有涉及用户队列重新绑定过程均是由消息队列系统自动触发完成。
除了根据第一物理队列的运行统计结果中包括的预设统计参数值,确定用户队列是否需要重新绑定,还可以用来判断是否能够继续为第一物理队列绑定新的的用户队列。
在一种可能的设计中,当第一物理队列的运行统计结果中包括的预设统计参数值小于等于第二阈值时,允许为第一物理队列绑定新的用户队列,第一阈值大于第二阈值。
例如,基于第k个物理队列设置两个阈值,分别为Threshold_Entry(即第二阈值)、Threshold_Upper(即第一阈值),当第k个物理队列的预设统计参数值达到Threshold_Entry时,不再为该物理队列分配新的用户队列;当第k个物理队列的预设统计参数值达到Threshold_Upper时,需要对该物理队列进行扩容,或将与第k个物理队列具有绑定关系的至少一个用户队列重新绑定至同一队列资源池内的其他队列。
其中,Threshold_Entry的值小于Threshold_Upper。假设Threshold_Entry设置为2万TPS(即每秒钟2万次请求),Threshold_Upper设置为3万TPS(即每秒钟3万次请求),现在为第k个物理队列分配了1000个用户队列,这1000个用户队列总请求数达到了21000TPS,这时新的用户队列就不会与第k个物理队列建立绑定关系了,同时,现有的1000个用户队列的总请求数量是动态变化的,比如其中的一个队列之前是500TPS,后来增加到1000TPS。当这1000个用户队列总请求数达到了31000TPS时,即大于Threshold_Upper时,将与第k个物理队列具有绑定关系的至少一个用户队列重新绑定至同一队列资源池内的其他队列。
下面结合图6对本申请实施例进行详细说明。
S601:创建用户队列。
具体的,创建用户队列的过程在访问接口层实现。
S602:为用户队列分配队列资源池。
具体的,根据该用户队列的队列类型将该用户队列分配至与该用户队列的队列类型相同的队列资源池。
S603:为用户队列分配第一分区数物理队列组。
具体的,可以根据该用户队列的处理需求将其分配至相应处理能力的物理队列组中,例如,当该用户队列的处理需求较低时,可将该用户队列分配至低分区数的物理队列组中。
S604:判断第一分区数物理队列组中是否还有剩余资源,若是执行S606,否则,执行S605。
具体的,判断第一分区数物理队列中是否还有物理队列能够与该用户队列建立绑定关系,例如,可以根据第一分区数物理队列中各个物理队列的运行统计结果中包括的预设统计参数值,确定是否存在预设统计参数值小于等于第二阈值的物理队列。
S605:为第一分区数物理队列组分配新的物理队列。
S606:将用户队列与第一分区数物理队列组中第一物理队列建立绑定关系。
这里的第一物理队列可以是第一分区数物理队列组中预设统计参数值小于等于第二阈值的物理队列,或者,S605中新的物理队列。
此外,当存在多个预设统计参数值小于等于第二阈值的物理队列时,可以选择其中负载最低的物理队列与用户队列建立绑定关系。
S607:每个监控时间点采集与第一物理队列具有绑定关系的N个用户队列的运行参数值,获得第一物理队列的运行统计结果。
S608:评估是否有需要重新绑定的用户队列,若是执行S609,否则,返回S607。
S609:将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列。
这里的S608与S609与上述图5所示的方法一致,重复之处不再赘述。
基于同一构思,本申请还提供了一种队列调度装置,该装置可以用于执行上述图5对应的方法实施例,因此本申请实施例提供的队列调度装置的实施方式可以参见该方法的实施方式,重复之处不再赘述。
参阅图7所示,本申请实施例提供一种队列调度装置,该装置应用于消息队列系统,消息队列系统包括至少一种队列类型的队列资源池,每个队列资源池包括至少两个不同处理能力的物理队列组,每个物理队列组包括至少一个物理队列,该装置包括:
采集处理单元710,用于在每个监控时间点采集与第一物理队列具有绑定关系的N个用户队列的运行参数值,根据运行参数值获得第一物理队列的运行统计结果,其中,第一物理队列归属于第一队列资源池中第一物理队列组,第一队列资源池为消息队列系统中的任一队列资源池,第一物理队列组为第一队列资源池中的任一物理队列组,N为正整数;
调度单元720,用于当第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,其中,目标物理队列是指在第一队列资源池中处理能力高于第一物理队列组的物理队列组中的一个物理队列。
在一种可能的设计中,所述N个用户队列的队列类型均与所述第一队列资源池的队列类型相同。
在一种可能的设计中,所述调度单元720还用于:
当所述第一物理队列的运行统计结果中包括的所述预设统计参数值小于等于第二阈值时,允许为所述第一物理队列绑定新的用户队列,所述第一阈值大于第二阈值。
在一种可能的设计中,当所述第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,所述调度单元720,具体用于:
在首次确定所述预设统计参数值大于所述第一阈值之后,继续统计后续M个连续监测时间点对应的M个预设统计参数值,M为正整数;
当所述M个预设统计参数值中K个预设统计参数值均大于所述第一阈值时,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,K为正整数。
在一种可能的设计中,所述预设统计参数值为所述第一物理队列的数据吞吐量或所述第一物理队列的消息请求数。
在一种可能的设计中,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列时,所述调度单元720,具体用于:
从与第一物理队列具有绑定关系的N个用户队列中选择吞吐量从大到小或消息请求数从大到小的前S个用户队列重新绑定至目标物理队列,S为正整数。
在一种可能的设计中,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列时,所述调度单元720,具体用于:
针对与所述第一物理队列具有绑定关系的至少一个用户队列中的第i个用户队列,所述第i个用户队列为所述至少一个用户队列中的任一队列,执行:
将所述第i个用户队列的状态参数从第一状态设置为第二状态,所述第一状态用于指示所述第i个用户队列处于正常绑定状态,所述第二状态用于指示所述第i个用户队列处于重新绑定状态;
将针对所述第i个用户队列的生产消息请求发送至所述目标物理队列;
将针对所述第i个用户队列的消费消息请求发送至所述第一物理队列,直至读出所述第i个用户队列在所述第一物理队列中存储的全部消息;
在读出所述第i个用户队列在所述第一物理队列中存储的全部消息后,将针对所述第i个用户队列的消费消息请求发送至所述目标物理队列;
将所述第i个用户队列的状态参数从所述第二状态设置为所述第一状态。
进一步地,基于图7所示的装置,本发明实施例还提供一种队列调度装置,并对各个单元进行进一步划分。参阅图8所示,该队列调度装置,包括物理队列管理器,用户队列管理器,用户队列属性管理器,和队列资源调度器。
其中,物理队列管理器,用户队列管理器,队列属性管理器相当于图7中的采集处理单元,队列资源调度器相当于图7中的调度单元。
物理队列管理器负责保存面向资源侧的元数据,包括队列资源池ID、物理队列组ID、物理队列ID、与每个物理队列绑定的用户队列列表、分区数、副本数、消息块大小等。其中,消息块大小设置了底层单个文件的最大尺寸。
用户队列管理器负责保存面向用户侧的队列元数据,例如用户队列名称、所属租户、队列类型、队列配额、访问权限等。队列配额是允许用户队列中保存的最大消息数量或最大存储空间。
每个用户队列具有一个用户队列属性管理器,用于记录该用户队列的运行参数值,包括平均消息大小、生产并发数、消费并发数、消息生产速率、消息消费速率、消息堆积数等。其中,消息队列主要包括生产消息和消费消息两个过程,如果只生产消息不消费消息,或生产消息的速度远大于消费消息的速度,没有被处理的消息就会越来越多,这些还没有被处理或被消费的消息数量就是消息堆积数。
队列资源调度器负责获得每个用户队列属性管理器以及物理队列管理器中保存的面向资源侧的元数据获得每个物理队列的运行统计结果,当某个物理队列的运行统计结果中包括的预设统计参数值大于对应的第一阈值时,将与该物理队列具有绑定关系的至少一个用户队列重新绑定至对应的目标物理队列。
应理解的是,上述模块的具体划分仅作为举例,不做为本申请的限定。
基于同一构思,本申请还提供了一种服务器,该服务器可以用于执行上述图5对应的方法实施例,因此本申请实施例提供的终端的实施方式可以参见该方法的实施方式,重复之处不再赘述。
参阅图9所示,本申请提供一种服务器900,包括通信接口910、处理器920和存储器930。其中,通信接口、处理器以及所述存储器之间可以通过总线系统相连。该存储器用于存储程序、指令或代码,所述处理器用于执行所述存储器中的程序、指令或代码,以具体执行:在每个监控时间点采集与第一物理队列具有绑定关系的N个用户队列的运行参数值,根据运行参数值获得第一物理队列的运行统计结果,其中,第一物理队列归属于第一队列资源池中第一物理队列组,第一队列资源池为消息队列系统中的任一队列资源池,第一物理队列组为第一队列资源池中的任一物理队列组,N为正整数;当第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,其中,目标物理队列是指在第一队列资源池中处理能力高于第一物理队列组的物理队列组中的一个物理队列。
应理解,在本申请实施例中,该处理器920可以是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器930可以包括只读存储器和随机存取存储器,并向处理器920提供指令和数据。存储器930的一部分还可以包括非易失性随机存取存储器。例如,存储器930还可以存储设备类型的信息。
该总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。
在实现过程中,图5对应的实施例的方法中的各步骤可以通过处理器920中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的报文处理方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器930中,处理器920读取存储器930中的信息,结合其硬件完成图5对应的实施例的方法中的各步骤。为避免重复,这里不再详细描述。
需要说明的是,一个具体的实施方式中,图7中的采集处理单元710的功能可以用图9中的通信接口910和处理器920实现,调度单元720的功能可以用图9中的处理器920实现。
参阅图2所示,本申请提供了一种消息队列系统,包括:物理存储层,元数据管理器,资源调度器和访问接口层。
在一种具体的实施方法中,资源调度器可以由图9所示的多台服务器构成。
综上所述,相较于现有技术中用户队列在创建队列时就占用固定的队列资源导致资源利用率不高的问题,采用本申请实施例提供的方法,不在创建队列时固化队列资源,采集每个用户队列的运行参数值,监控各个物理的运行统计结果,当某一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与该物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,有效提升了资源利用率,且初始投资较低,在用户队列刚刚上线时,不需要提前做精确的资源规划,可以随着用户队列的实际运行情况逐渐为其调整绑定的物理队列。此外,在为用户队列分配队列资源池时,根据该用户队列的队列类型确定分配到哪个队列资源池,使系统的整体性能更高,资源利用合理性提高。
本领域内的技术人员应明白,本申请实施例可提供为方法、系统、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (14)
1.一种队列调度方法,所述方法应用于消息队列系统,所述消息队列系统包括至少一种队列类型的队列资源池,每个队列资源池包括至少两个不同处理能力的物理队列组,每个物理队列组包括至少一个物理队列,其特征在于,包括:
在每个监控时间点采集与第一物理队列具有绑定关系的N个用户队列的运行参数值,根据所述运行参数值获得所述第一物理队列的运行统计结果,其中,所述第一物理队列归属于第一队列资源池中第一物理队列组,所述第一队列资源池为所述消息队列系统中的任一队列资源池,所述第一物理队列组为所述第一队列资源池中的任一物理队列组,N为正整数;
当所述第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,其中,所述目标物理队列是指在所述第一队列资源池中处理能力高于所述第一物理队列组的物理队列组中的一个物理队列。
2.如权利要求1所述的方法,其特征在于,所述N个用户队列的队列类型均与所述第一队列资源池的队列类型相同。
3.如权利要求1或2所述的方法,其特征在于,还包括:
当所述第一物理队列的运行统计结果中包括的所述预设统计参数值小于等于第二阈值时,允许为所述第一物理队列绑定新的用户队列,所述第一阈值大于第二阈值。
4.如权利要求1或2所述的方法,其特征在于,当所述第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,包括:
在首次确定所述预设统计参数值大于所述第一阈值之后,继续统计后续M个连续监测时间点对应的M个预设统计参数值,M为正整数;
当所述M个预设统计参数值中K个预设统计参数值均大于所述第一阈值时,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,K为正整数。
5.如权利要求1或2所述的方法,其特征在于,所述预设统计参数值为所述第一物理队列的数据吞吐量或所述第一物理队列的消息请求数。
6.如权利要求1或2所述的方法,其特征在于,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,包括:
从与第一物理队列具有绑定关系的N个用户队列中选择吞吐量从大到小或消息请求数从大到小的前S个用户队列重新绑定至目标物理队列,S为正整数。
7.如权利要求1或2所述的方法,其特征在于,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,包括:
针对与所述第一物理队列具有绑定关系的至少一个用户队列中的第i个用户队列,所述第i个用户队列为所述至少一个用户队列中的任一队列,执行:
将所述第i个用户队列的状态参数从第一状态设置为第二状态,所述第一状态用于指示所述第i个用户队列处于正常绑定状态,所述第二状态用于指示所述第i个用户队列处于重新绑定状态;
将针对所述第i个用户队列的生产消息请求发送至所述目标物理队列;
将针对所述第i个用户队列的消费消息请求发送至所述第一物理队列,直至读出所述第i个用户队列在所述第一物理队列中存储的全部消息;
在读出所述第i个用户队列在所述第一物理队列中存储的全部消息后,将针对所述第i个用户队列的消费消息请求发送至所述目标物理队列;
将所述第i个用户队列的状态参数从所述第二状态设置为所述第一状态。
8.一种队列调度装置,所述装置应用于消息队列系统,所述消息队列系统包括至少一种队列类型的队列资源池,每个队列资源池包括至少两个不同处理能力的物理队列组,每个物理队列组包括至少一个物理队列,其特征在于,包括:
采集处理单元,用于在每个监控时间点采集与第一物理队列具有绑定关系的N个用户队列的运行参数值,根据所述运行参数值获得所述第一物理队列的运行统计结果,其中,所述第一物理队列归属于第一队列资源池中第一物理队列组,所述第一队列资源池为所述消息队列系统中的任一队列资源池,所述第一物理队列组为所述第一队列资源池中的任一物理队列组,N为正整数;
调度单元,用于当所述第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,其中,所述目标物理队列是指在所述第一队列资源池中处理能力高于所述第一物理队列组的物理队列组中的一个物理队列。
9.如权利要求8所述的装置,其特征在于,所述N个用户队列的队列类型均与所述第一队列资源池的队列类型相同。
10.如权利要求8或9所述的装置,其特征在于,所述调度单元还用于:
当所述第一物理队列的运行统计结果中包括的所述预设统计参数值小于等于第二阈值时,允许为所述第一物理队列绑定新的用户队列,所述第一阈值大于第二阈值。
11.如权利要求8或9所述的装置,其特征在于,当所述第一物理队列的运行统计结果中包括的预设统计参数值大于第一阈值时,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,所述调度单元,具体用于:
在首次确定所述预设统计参数值大于所述第一阈值之后,继续统计后续M个连续监测时间点对应的M个预设统计参数值,M为正整数;
当所述M个预设统计参数值中K个预设统计参数值均大于所述第一阈值时,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列,K为正整数。
12.如权利要求8或9所述的装置,其特征在于,所述预设统计参数值为所述第一物理队列的数据吞吐量或所述第一物理队列的消息请求数。
13.如权利要求8或9所述的装置,其特征在于,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列时,所述调度单元,具体用于:
从与第一物理队列具有绑定关系的N个用户队列中选择吞吐量从大到小或消息请求数从大到小的前S个用户队列重新绑定至目标物理队列,S为正整数。
14.如权利要求8或9所述的装置,其特征在于,将与所述第一物理队列具有绑定关系的至少一个用户队列重新绑定至目标物理队列时,所述调度单元,具体用于:
针对与所述第一物理队列具有绑定关系的至少一个用户队列中的第i个用户队列,所述第i个用户队列为所述至少一个用户队列中的任一队列,执行:
将所述第i个用户队列的状态参数从第一状态设置为第二状态,所述第一状态用于指示所述第i个用户队列处于正常绑定状态,所述第二状态用于指示所述第i个用户队列处于重新绑定状态;
将针对所述第i个用户队列的生产消息请求发送至所述目标物理队列;
将针对所述第i个用户队列的消费消息请求发送至所述第一物理队列,直至读出所述第i个用户队列在所述第一物理队列中存储的全部消息;
在读出所述第i个用户队列在所述第一物理队列中存储的全部消息后,将针对所述第i个用户队列的消费消息请求发送至所述目标物理队列;
将所述第i个用户队列的状态参数从所述第二状态设置为所述第一状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710149931.1A CN108574645B (zh) | 2017-03-14 | 2017-03-14 | 一种队列调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710149931.1A CN108574645B (zh) | 2017-03-14 | 2017-03-14 | 一种队列调度方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108574645A CN108574645A (zh) | 2018-09-25 |
CN108574645B true CN108574645B (zh) | 2020-08-25 |
Family
ID=63577189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710149931.1A Active CN108574645B (zh) | 2017-03-14 | 2017-03-14 | 一种队列调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108574645B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7231749B2 (ja) * | 2019-02-03 | 2023-03-01 | 華為技術有限公司 | パケットスケジューリング方法、スケジューラ、ネットワーク装置及びネットワークシステム |
CN111131082A (zh) * | 2019-12-25 | 2020-05-08 | 广东电科院能源技术有限责任公司 | 一种充电设施数据传输动态控制方法及系统 |
CN113138860B (zh) * | 2020-01-17 | 2023-11-03 | 中国移动通信集团浙江有限公司 | 消息队列的管理方法及装置 |
CN111625358B (zh) * | 2020-05-25 | 2023-06-20 | 浙江大华技术股份有限公司 | 一种资源分配方法、装置、电子设备及存储介质 |
CN111935658B (zh) * | 2020-07-16 | 2022-01-18 | 北京思特奇信息技术股份有限公司 | 一种解决消息交互中拥塞的方法及系统 |
CN111897665B (zh) * | 2020-08-04 | 2024-09-27 | 北京泽石科技有限公司 | 数据队列的处理方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1182553A2 (en) * | 2000-08-24 | 2002-02-27 | Cognos Incorporated | Efficient assignment of processing resources in a fair queuing system |
US6711607B1 (en) * | 2000-02-04 | 2004-03-23 | Ensim Corporation | Dynamic scheduling of task streams in a multiple-resource system to ensure task stream quality of service |
CN102546379A (zh) * | 2010-12-27 | 2012-07-04 | 中国移动通信集团公司 | 一种虚拟化资源调度的方法及虚拟化资源调度系统 |
CN102932279A (zh) * | 2012-10-30 | 2013-02-13 | 北京邮电大学 | 一种云环境数据中心多维资源调度系统及方法 |
CN103179048A (zh) * | 2011-12-21 | 2013-06-26 | 中国电信股份有限公司 | 云数据中心的主机QoS策略变换方法及系统 |
CN103458052A (zh) * | 2013-09-16 | 2013-12-18 | 北京搜狐新媒体信息技术有限公司 | 一种基于IaaS云平台的资源调度方法和装置 |
CN105824625A (zh) * | 2016-03-14 | 2016-08-03 | 北京中电普华信息技术有限公司 | 一种基于云环境的业务应用构造装置及方法 |
-
2017
- 2017-03-14 CN CN201710149931.1A patent/CN108574645B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6711607B1 (en) * | 2000-02-04 | 2004-03-23 | Ensim Corporation | Dynamic scheduling of task streams in a multiple-resource system to ensure task stream quality of service |
EP1182553A2 (en) * | 2000-08-24 | 2002-02-27 | Cognos Incorporated | Efficient assignment of processing resources in a fair queuing system |
CN102546379A (zh) * | 2010-12-27 | 2012-07-04 | 中国移动通信集团公司 | 一种虚拟化资源调度的方法及虚拟化资源调度系统 |
CN103179048A (zh) * | 2011-12-21 | 2013-06-26 | 中国电信股份有限公司 | 云数据中心的主机QoS策略变换方法及系统 |
CN102932279A (zh) * | 2012-10-30 | 2013-02-13 | 北京邮电大学 | 一种云环境数据中心多维资源调度系统及方法 |
CN103458052A (zh) * | 2013-09-16 | 2013-12-18 | 北京搜狐新媒体信息技术有限公司 | 一种基于IaaS云平台的资源调度方法和装置 |
CN105824625A (zh) * | 2016-03-14 | 2016-08-03 | 北京中电普华信息技术有限公司 | 一种基于云环境的业务应用构造装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108574645A (zh) | 2018-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108574645B (zh) | 一种队列调度方法及装置 | |
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
CN110611623B (zh) | 限流方法和装置 | |
CN106452818B (zh) | 一种资源调度的方法和系统 | |
US20140082170A1 (en) | System and method for small batching processing of usage requests | |
CN106713396B (zh) | 服务器调度方法和系统 | |
CN103019853A (zh) | 一种作业任务的调度方法和装置 | |
CN112749056A (zh) | 应用服务指标监控方法、装置、计算机设备和存储介质 | |
CN111522786A (zh) | 日志处理系统及方法 | |
CN111966289A (zh) | 基于Kafka集群的分区优化方法和系统 | |
CN111930493A (zh) | 集群中NodeManager状态管理方法、装置及计算设备 | |
CN112860387A (zh) | 分布式任务调度方法、装置、计算机设备及存储介质 | |
CN112579692A (zh) | 一种数据同步方法、装置、系统、设备及存储介质 | |
CN114490078A (zh) | 一种微服务的动态缩扩容方法、装置及设备 | |
CN107038067B (zh) | 分布式流处理中处理资源的管理方法和装置 | |
CN111831408A (zh) | 异步任务处理方法、装置、电子设备及介质 | |
CN109586970B (zh) | 资源分配方法、装置及系统 | |
CN111008071A (zh) | 任务调度系统、方法和服务器 | |
Watanabe et al. | Adaptive group-based job scheduling for high performance and reliable volunteer computing | |
EP4206915A1 (en) | Container creation method and apparatus, electronic device, and storage medium | |
CN107426012B (zh) | 一种基于超融合架构的故障恢复方法及其装置 | |
CN109257256A (zh) | 设备监控方法、装置、计算机设备及存储介质 | |
CN111400241B (zh) | 数据重构方法和装置 | |
CN116775420A (zh) | 基于Flink流计算的信创云平台资源展示和预警方法及系统 | |
CN111158896A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220118 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: xFusion Digital Technologies Co., Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |