[发明专利]一种计算机中的任务分配方法及系统有效
申请号: | 201610009481.1 | 申请日: | 2016-01-06 |
公开(公告)号: | CN105607956B | 公开(公告)日: | 2019-06-04 |
发明(设计)人: | 黄平 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 宋焰琴 |
地址: | 100080 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算机 中的 任务 分配 方法 系统 | ||
本发明提供一种计算机中的任务分配方法及系统,用于将m个任务池中的任务分配给p个进程,每个任务池具有n个存储单元,方法首先对p个进程按顺序进行排列,得到进程队列,然后在m个任务池的共m×n个存储单元组成的二维矩阵中,按照行列的排列顺序将任务分配给进程。本发明是将多个任务池的存储单元看作是一个二维矩阵,然后将矩阵中的元素按顺序分配给进程,这样使得每个任务池拥有的进程数、每个进程的占有的任务池都能保证均衡,从而实现进程的负载均衡及保证任务被高效执行。
技术领域
本发明属于计算机领域,尤其涉及一种计算机中的任务分配方法及系统。
背景技术
在软件系统中有许多业务场景都需要定时处理任务,处理这些任务的主体通常由“进程”承担。在任务量小的情况下,一个“进程”即可完成这些任务。但在任务量大,可靠性要求高的情况下,不得不采用分布式多线程的模式来处理。一旦涉及到多线程模式,那就牵涉出了任务如何在这些“进程”之间分配的问题。
Quartz是OpenSymphony开源组织在Job scheduling领域的一个Java开源项目。Quartz框架的核心是调度器,它负责管理Quartz应用运行时环境。调度器不是靠自己做所有的工作,而是依赖框架内一些非常重要的部件。Quartz不仅仅是进程和进程管理。为确保可伸缩性,Quartz采用了基于多进程的架构。启动时,框架初始化一套worker进程,这套进程被调度器用来执行预定的任务,这样Quartz就能并发运行多个任务。Quartz依赖一套松耦合的进程池管理部件来管理线程环境。
简单说来,Quartz是一个分布式的可并行运行多个任务的定时器框架,成熟稳定且使用广泛。它通过关系型数据库和JDBC作业存储共享数据以实现分布式的目的。
Quartz功能强大,但正是由于它的强大功能,造成对环境的依赖非常苛刻,资源消耗也较高。同时使用数据库来做分布式部署,效率也较低。它的集群方案及配置也比较繁琐,对新手来说有一定的上手难度。总之,Quartz是一个重量级的支持分布式任务执行的框架,但使用起来需要花费一定的学习成本,虽然可靠但不高效。
发明内容
(一)要解决的技术问题
本发明的目的在于,提供一种计算机中的任务分配方法及系统,实现进程的负载均衡,并保证任务被高效执行。
(二)技术方案
本发明提供一种计算机中的任务分配方法,用于将m个任务池中的任务分配给p个进程,m个任务池依次排列,每个任务池具有n个存储单元,方法包括:
S1,对p个进程按顺序进行排列,得到进程队列;
S2,将第i个任务池的第j个存储单元中的任务分配给第k个进程,若的余数等于0,则k等于p,否则k等于的余数,m、n、p、i、j、k均为大于等于1的整数,其中,1≤i≤m,1≤j≤n,1≤k≤p。
本发明还提供一种计算机中的任务分配系统,用于将m个任务池中的任务分配给p个进程,m个任务池依次排列,每个任务池具有n个存储单元,系统包括:
进程排序模块,对p个进程按顺序进行排列,得到进程队列;
任务分配模块,将第i个任务池的第j个存储单元中的任务分配给第k个进程,若的余数等于0,则k等于p,否则k等于的余数,m、n、p、i、j、k均为大于等于1的整数,其中,1≤i≤m,1≤j≤n,1≤k≤p。,其中,1≤i≤m,1≤j≤n,1≤k≤p。
(三)有益效果
本发明将多个任务池的存储单元看作是一个二维矩阵,然后将矩阵中的元素按顺序分配给进程,这样使得分配关系清楚明了,易于维护和监控;另外,通过上面的分配方式,使得每个任务池拥有的进程数、每个进程的占有的任务池都能保证均衡,从而实现进程的负载均衡及保证任务被高效执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610009481.1/2.html,转载请声明来源钻瓜专利网。