CN107301085A - 一种基于队列的云平台任务分配方法 - Google Patents

一种基于队列的云平台任务分配方法 Download PDF

Info

Publication number
CN107301085A
CN107301085A CN201710396757.0A CN201710396757A CN107301085A CN 107301085 A CN107301085 A CN 107301085A CN 201710396757 A CN201710396757 A CN 201710396757A CN 107301085 A CN107301085 A CN 107301085A
Authority
CN
China
Prior art keywords
task
queue
tasks
node
resource
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.)
Granted
Application number
CN201710396757.0A
Other languages
English (en)
Other versions
CN107301085B (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.)
Rootcloud Technology Co Ltd
Original Assignee
Shenzhen God Cloud Technology Co Ltd
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 Shenzhen God Cloud Technology Co Ltd filed Critical Shenzhen God Cloud Technology Co Ltd
Priority to CN201710396757.0A priority Critical patent/CN107301085B/zh
Publication of CN107301085A publication Critical patent/CN107301085A/zh
Application granted granted Critical
Publication of CN107301085B publication Critical patent/CN107301085B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/524Deadlock detection or avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Multi Processors (AREA)

Abstract

本发明提供一种基于队列的云平台任务分配方法,所述队列包括用于存储云平台中所有任务的资源任务队列和用于存储节点的所有任务的节点任务队列,其中,每一个节点均对应一个节点任务队列,所述方法包括:任务接收线程接收用户提交的请求并将所述请求以任务的形式放入资源任务队列;任务调度线程从所述资源任务队列调取第一任务,并根据所述第一任务的操作节点将所述第一任务放入对应的节点任务队列;任务分发线程从所述节点任务队列取出所述第一任务并将所述第一任务分发到所述第一任务的操作节点以执行所述第一任务。

Description

一种基于队列的云平台任务分配方法
技术领域
本发明涉及云计算领域,特别是一种基于队列的云平台任务分配方法。
背景技术
云平台中针对同一个资源的任务需要串行执行,而针对不同资源的任务则可以并行执行,云平台中必须要处理好串行任务与并行任务才能正确地协调平台中的各项资源。
目前,要处理好云平台中的串行与并行任务,必须采用内部锁或者采用第三方的分布式协调服务。但采用内部锁会造成系统资源的浪费并可能有死锁的风险,并且不利于系统的业务规模的扩展;而采用分布式协调服务会对云平台的运维管理要求更高。
发明内容
为了解决上述问题,本发明提供了一种基于队列的云平台任务分配方法,所述队列包括用于存储云平台中所有任务的资源任务队列和用于存储节点的任务的节点任务队列,其中,每一个所述节点均对应一个所述节点任务队列,所述方法包括:
任务接收线程接收用户提交的请求并将所述请求以任务的形式放入资源任务队列;
任务调度线程从所述资源任务队列调取第一任务,并根据所述第一任务的操作节点将所述第一任务放入对应的节点任务队列;
任务分发线程从所述节点任务队列取出所述第一任务并将所述第一任务分发到所述第一任务的操作节点以执行所述第一任务。
优选地,当所述任务调度线程从所述资源任务队列调取所述第一任务时,所述资源任务队列可以继续放入其他任务,但不能被继续调取任务;当被调取的所述第一任务完成后,所述资源任务队列可以被继续调取其他任务。
优选地,所述节点任务队列包含计数器,每当所述任务分发线程从所述节点任务队列取出一个任务后,所述计数器会自动增加直至达到上限值。
优选地,当所述计数器达到上限值时,所述节点任务队列可以被继续放入其他任务,但不能被读取任务。
进一步,当取出的任务被执行完成后,所述计数器的值会减少,此时所述节点任务队列可以继续被读取其他任务。
本发明还提供一种基于队列的云平台任务分配管理系统,所述队列包括资源任务队列和节点任务队列,所述资源任务队列用于存储云平台中的所有任务,所述节点任务队列用于存储该节点的所有任务,其特征在于,
所述云平台任务分配管理系统包括:
任务接收线程,用于接收用户提交的请求并将所述请求以任务的形式放入所述资源任务队列里;
任务调度线程,用于从所述资源任务队列调取第一任务,并根据所述第一任务的操作节点将所述第一任务放入对应的所述节点任务队列;
任务分发线程,用于从所述节点任务队列取出所述第一任务并将所述第一任务分发到所述第一任务的操作节点以执行所述第一任务。
通过本发明的云平台任务分配方法和系统,能够实现无锁的任务机制,并能够减少云平台中的资源消耗,避免死锁;同时,能够动态分配任务,对任务进行统一管理,有效降低云平台的业务逻辑的耦合性,有利于云平台的部署和运维。
附图说明
图1为本发明流程图。
具体实施方式
如图1所示,本发明提供一种基于队列的云平台任务分配方法,所述队列包括用于存储云平台中所有任务的资源任务队列和用于存储节点的所有任务的节点任务队列,其中,每一个节点均对应一个节点任务队列,节点指任务的操作节点。
本发明的方法包括:
S101:任务接收线程接收用户提交的请求并将所述请求以任务的形式放入资源任务队列;
S102:任务调度线程从所述资源任务队列调取第一任务,并根据所述第一任务的操作节点将所述第一任务放入对应的节点任务队列;
S103:任务分发线程从所述节点任务队列取出所述第一任务并将所述第一任务分发到所述第一任务的操作节点以执行所述第一任务。
进一步,资源任务队列是一个串行队列,当任务调度线程从资源任务队列调取一个任务时,资源任务队列会进入半冻结状态。半冻结状态的资源任务队列可以继续放入其他任务,但不能被继续读取任务;当被调取的第一任务完成后,资源任务队列可以被继续读取其他任务。
进一步,节点任务队列包含计数器,当任务分发线程从节点任务队列取出一个任务后,所述计数器会自动增加一个直至达到上限值。当计数器达到上限值时,节点任务队列进入半冻结状态,此时,该节点任务队列可以被继续放入其他任务,但不能被读取下一任务。当任务被执行完成后,计数器的值会减少一个,此时该节点任务队列可以继续被读取其他任务。
此外,本发明还提供一种基于队列的云平台任务分配管理系统,其中,
所述云平台任务分配管理系统包括:
任务接收线程,用于接收用户提交的请求并将所述请求以任务的形式放入所述资源任务队列里;
任务调度线程,用于从所述资源任务队列调取第一任务,并根据所述第一任务的操作节点将所述第一任务放入对应的所述节点任务队列;
任务分发线程,用于从所述节点任务队列取出所述第一任务并将所述第一任务分发到所述第一任务的操作节点以执行所述第一任务。
通过本发明的云平台任务分配方法和系统,能够实现无锁的任务机制,并能够减少云平台中的资源消耗,避免死锁;同时,能够动态分配任务,对任务进行统一管理,有效降低云平台的业务逻辑的耦合性,有利于云平台的部署和运维。

Claims (6)

1.一种基于队列的云平台任务分配方法,所述队列包括用于存储云平台中所有任务的资源任务队列和用于存储节点的任务的节点任务队列,其中,每一个所述节点均对应一个所述节点任务队列,所述方法包括:
任务接收线程接收用户提交的请求并将所述请求以任务的形式放入资源任务队列;
任务调度线程从所述资源任务队列调取第一任务,并根据所述第一任务的操作节点将所述第一任务放入对应的节点任务队列;
任务分发线程从所述节点任务队列取出所述第一任务并将所述第一任务分发到所述第一任务的操作节点以执行所述第一任务。
2.如权利要求1所述的基于队列的云平台任务分配方法,其特征在于:
当所述任务调度线程从所述资源任务队列调取所述第一任务时,所述资源任务队列可以继续放入其他任务,但不能被继续调取任务;当被调取的所述第一任务完成后,所述资源任务队列可以被继续调取其他任务。
3.如权利要求1所述的基于队列的云平台任务分配方法,其特征在于:
所述节点任务队列包含计数器,每当所述任务分发线程从所述节点任务队列取出一个任务后,所述计数器会自动增加直至达到上限值。
4.如权利要求3所述的基于队列的云平台任务分配方法,其特征在于:
当所述计数器达到上限值时,所述节点任务队列可以被继续放入其他任务,但不能被读取任务。
5.如权利要求4所述的基于队列的云平台任务分配方法,其特征在于:
当取出的任务被执行完成后,所述计数器的值会减少,此时所述节点任务队列可以继续被读取其他任务。
6.一种基于队列的云平台任务分配管理系统,所述队列包括资源任务队列和节点任务队列,所述资源任务队列用于存储云平台中的所有任务,所述节点任务队列用于存储该节点的所有任务,其特征在于,
所述云平台任务分配管理系统包括:
任务接收线程,用于接收用户提交的请求并将所述请求以任务的形式放入所述资源任务队列里;
任务调度线程,用于从所述资源任务队列调取第一任务,并根据所述第一任务的操作节点将所述第一任务放入对应的所述节点任务队列;
任务分发线程,用于从所述节点任务队列取出所述第一任务并将所述第一任务分发到所述第一任务的操作节点以执行所述第一任务。
CN201710396757.0A 2017-05-31 2017-05-31 一种基于队列的云平台任务分配方法 Active CN107301085B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710396757.0A CN107301085B (zh) 2017-05-31 2017-05-31 一种基于队列的云平台任务分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710396757.0A CN107301085B (zh) 2017-05-31 2017-05-31 一种基于队列的云平台任务分配方法

Publications (2)

Publication Number Publication Date
CN107301085A true CN107301085A (zh) 2017-10-27
CN107301085B CN107301085B (zh) 2020-10-23

Family

ID=60137382

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710396757.0A Active CN107301085B (zh) 2017-05-31 2017-05-31 一种基于队列的云平台任务分配方法

Country Status (1)

Country Link
CN (1) CN107301085B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112685181A (zh) * 2020-12-29 2021-04-20 成都科来网络技术有限公司 一种均衡cpu资源的推送任务调度方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103559082A (zh) * 2013-11-04 2014-02-05 北京华胜天成科技股份有限公司 一种基于队列的分布式任务调度方法、装置及系统
CN104731647A (zh) * 2015-03-31 2015-06-24 北京奇艺世纪科技有限公司 任务处理方法及系统
CN105022670A (zh) * 2015-07-17 2015-11-04 中国海洋大学 一种云计算平台中的异构分布式任务处理系统及其处理方法
CN105718315A (zh) * 2016-02-17 2016-06-29 中国农业银行股份有限公司 一种任务处理方法及服务器
CN106326339A (zh) * 2016-08-03 2017-01-11 上海蔓盈信息科技有限公司 任务分配方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103559082A (zh) * 2013-11-04 2014-02-05 北京华胜天成科技股份有限公司 一种基于队列的分布式任务调度方法、装置及系统
CN104731647A (zh) * 2015-03-31 2015-06-24 北京奇艺世纪科技有限公司 任务处理方法及系统
CN105022670A (zh) * 2015-07-17 2015-11-04 中国海洋大学 一种云计算平台中的异构分布式任务处理系统及其处理方法
CN105718315A (zh) * 2016-02-17 2016-06-29 中国农业银行股份有限公司 一种任务处理方法及服务器
CN106326339A (zh) * 2016-08-03 2017-01-11 上海蔓盈信息科技有限公司 任务分配方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112685181A (zh) * 2020-12-29 2021-04-20 成都科来网络技术有限公司 一种均衡cpu资源的推送任务调度方法及系统
CN112685181B (zh) * 2020-12-29 2024-06-04 科来网络技术股份有限公司 一种均衡cpu资源的推送任务调度方法及系统

Also Published As

Publication number Publication date
CN107301085B (zh) 2020-10-23

Similar Documents

Publication Publication Date Title
US9229783B2 (en) Methods and apparatus for resource capacity evaluation in a system of virtual containers
US8893145B2 (en) Method to reduce queue synchronization of multiple work items in a system with high memory latency between processing nodes
CN103731372B (zh) 一种混合云环境下服务提供者的资源供应方法
CN103999051B (zh) 用于着色器核心中着色器资源分配的策略
US20150127834A1 (en) Optimizing placement of virtual machines
CN104252390B (zh) 资源调度方法、装置和系统
CN107301093B (zh) 一种管理资源的方法和装置
CN106547612A (zh) 一种多任务处理方法及装置
CN104778080A (zh) 基于协处理器的作业调度处理方法及装置
CN103761146B (zh) 一种MapReduce动态设定slots数量的方法
CN109840877B (zh) 一种图形处理器及其资源调度方法、装置
CN104579865A (zh) 对于飞行器的数据通信网络
CN103778017B (zh) 改进虚拟处理器调度的亲和性
CN103366022B (zh) 信息处理系统及其处理方法
CN109697122A (zh) 任务处理方法、设备及计算机存储介质
CN109992418B (zh) Sla感知的多租户大数据平台资源优先级调度方法及系统
CN103294536A (zh) 控制用于处理任务的工作分布
CN110134430A (zh) 一种数据打包方法、装置、存储介质和服务器
CN108595567A (zh) 一种小文件的合并方法、装置、设备及可读存储介质
CN110543352B (zh) 调度系统的任务分配方法及其相关的装置
CN104881322A (zh) 一种基于装箱模型的集群资源调度方法及装置
CN104579863A (zh) 用于飞机的数据通信网络
CN103428099B (zh) 一种通用多核网络处理器流量控制的方法
CN102708003A (zh) 一种云平台下的资源分配方法
CN104579864A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200721

Address after: No.28, Zhuangwu village, Naozhou Town, Zhanjiang City, Guangdong Province

Applicant after: Doujiajin

Address before: Nanshan District Xueyuan Road in Shenzhen city of Guangdong province 518055 No. 1001 Nanshan Chi Park C3 building 13 floor

Applicant before: SHENZHEN SHENCLOUD TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200922

Address after: Room 303-309, No.3, Pazhou Avenue East Road, Haizhu District, Guangzhou City, Guangdong Province 510000

Applicant after: IROOTECH TECHNOLOGY Co.,Ltd.

Address before: No.28, Zhuangwu village, Naozhou Town, Zhanjiang City, Guangdong Province

Applicant before: Doujiajin

GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Room 303-309, No.3, Pazhou Avenue East Road, Haizhu District, Guangzhou City, Guangdong Province 510000

Patentee after: Shugen Internet Co.,Ltd.

Address before: Room 303-309, No.3, Pazhou Avenue East Road, Haizhu District, Guangzhou City, Guangdong Province 510000

Patentee before: IROOTECH TECHNOLOGY Co.,Ltd.