一种多业务调度方法、装置与系统的制作方法

文档序号:7699375阅读:96来源:国知局
专利名称:一种多业务调度方法、装置与系统的制作方法
技术领域
本发明涉及业务调度,尤其涉及在多业务处理平台或多业务并行系统中进 行多业务调度的方法、相应的多业务调度装置及多业务调度系统。
背景技术
在多业务处理平台或多业务并行系统中,业务类型不断增加。以-现频监控 系统为例,随着视频监控系统规模的不断扩大,视频监控业务不断丰富。视频 监控系统的主要功能已经不仅仅局限于视频观看和视频点播。当系统的业务类 型及业务量不断上升时,如何合理地利用系统资源,综合考虑各类型业务的优 先级和各类型业务一皮调度的次数,体现出让优先级高的业务优先被调度执行,
同时给优先级较低的业务合适的调度机会, 一直是多业务并行系统需要解决的 一个问题。特别是对于视频监控系统,现有的质量保证方案多是针对流媒体转
发和传输效率的质量保证,还没有针对视频监控的多业务的质量保证(Qos) 的方法。

发明内容
本发明提供一种多业务调度方法、装置与系统,实现多业务的质量保证。 本发明提供的多业务调度方法,包括
在当前调度扫描周期内,扫描按业务类型存储业务请求的各业务接收队 列,确定出当前存储有业务请求的业务接收队列;
在所述存储有业务请求的业务接收队列中,分别确定出每一个业务接收队 列对应的当前权值;所述当前权值与对应的业务接收队列预设的优先级值正相 关,并随对应的业务接收队列的调度次数增加而增加;所述优先级值越大,对
6应的业务接收队列的优先级越低;
根据任务执行队列的数量,按所述当前权值从小到大的顺序,选择相应数 量的业务接收队列;
从选择出的业务接收队列中分别获取一个业务请求作为一个任务,调度到 不同的所述任务执行队列中。
本发明还提供一种多业务调度装置,包括
扫描单元,用于在当前调度扫描周期内,扫描按业务类型存储业务请求的 各业务接收队列,确定出当前存储有业务请求的业务接收队列;
当前权值确定单元,用于在所述存储有业务请求的业务接收队列中,分别 确定出每一个业务接收队列对应的当前权值;所述当前权值与对应的业务接收 队列预设的优先级值正相关,并随对应的业务接收队列的调度次数增加而增 加;所述优先级值越大,对应的业务接收队列的优先级越低;
队列选择单元,用于根据任务执行队列的数量,按所述当前权值从小到大 的顺序,选择相应数量的业务接收队列;
调度执行单元,用于从选择出的业务接收队列中分别获取一个业务请求作 为一个任务,调度到不同的所述任务执行队列中。
本发明还提供一种多业务调度系统,包括
业务接收装置,用于接收业务请求,并根据所述业务请求所属业务类型, 将接收的业务请求存储其所属业务类型对应的业务接收队列中;
业务接收队列存储装置,用于存储业务接收队列;
业务调度装置,用于在当前调度扫描周期内,扫描按业务类型存储业务请 求的各业务接收队列,确定出当前存储有业务请求的业务接收队列;以及
在所述存储有业务请求的业务接收队列中,分别确定出每一个业务接收队 列对应的当前权值;所述当前权值与对应的业务接收队列预设的优先级值正相 关,并随对应的业务接收队列的调度次数增加而增加;所述优先级值越大,对 应的业务接收队列的优先级越低;以及根据任务执行队列的数量,按所述当前权值从小到大的顺序,选择相应it
量的业务接收队列;以及
从选择出的业务接收队列中分别获取一个业务请求作为一个任务,调度到
不同的所述任务执-f亍队列中;
任务执行队列存储装置,用于存储任务执行队列; 业务执行装置,用于执行调度到所述任务执行队列中的各任务。 采用本发明,在当前调度扫描周期内,扫描各业务接收队列(每一个业务 接收队列中存储一种业务类型的业务请求),从存储有业务请求的各业务接收 队列中选择出部分队列(选择的队列数量,与系统设置的任务执行队列数量相 同)中的业务进行调度。选择方法是分别确定出每一个业务接收队列对应的 当前权值,选择当前权值较小的部分业务接收队列。而每一个业务接收队列的 当前权值与该业务接收队列的优先级值(业务接收队列的优先级越低,其对应 的优先级值越大)及调度次数相关。即业务接收队列的当前权值与其预设的 优先级值正相关,并随该业务接收队列的调度次数的增加而增加。而业务接收 队列的当前权值较小时, 一方面可表明该业务接收队列的优先级较高(对应的 优先级值较小),另一方面也可表明该业务接收队列被调度的次数较少。因此, 本发明采用选择当前权值较小的队列进行调度,既体现出让优先级高的业务接 收队列中的业务优先被调度执行,同时也给调度次数较少的业务接收队列合理 的调度机会,从而实现多业务的质量保证。避免了简单按优先级调度时,低优 先级业务接收队列中的业务,只有在高优先级业务接收队列中的业务都被执行 后才能被调度,从而无法保证低优先级业务队列中的业务质量;同时,也避免 了简单采用平均调度的方法,当系统资源紧张时,高优先级业务接收队列中的 业务由于被调度的次数有限,从而无法满足其相应的业务质量要求的问题。


图1为本发明实施例4是供的多业务调度方法流程图;图2为本发明实施例提供的多业务调度装置结构示意图3为本发明实施例提供的多业务调度装置中当前权值确定单元结构示意
图4为本发明实施例提供的多业务调度系统结构示意图。
具体实施例方式
本发明提供一种多业务调度方法,将各业务按不同的业务类型存储到相应 的业务接收队列中,并设置业务接收队列的优先级。在进行业务调度时,综合 考虑各业务接收队列的优先级及调度次数,合理确定出每个调度扫描周期内调 度的业务接收队列,从而实现多业务质量保证。
下面结合附图,对本发明提供的多业务调度方法进行详细阐述。 参见图1,为本发明实施例提供的多业务调度方法流程图。包括如下步骤 步骤S101、在当前调度扫描周期内,扫描按业务类型存储业务请求的各业 务接收队列,确定出当前存储有业务请求的业务接收队列;
步骤S102、在存储有业务请求的业务接收队列中,分别确定出每一个业务 接收队列对应的当前权值;其中
时,当前权值也增大),并随该业务接收队列的调度次数的增加而增加;优先 级值越大的业务接收队列,其对应的优先级越低;
步骤S103、根据任务执行队列的数量,按各业务接收队列的当前权值从小 到大的顺序,选择相应数量的业务接收队列;
步骤S104、从选择出的业务接收队列中分别获取一个业务请求作为一个任 务,调度到不同的任务执行队列中。
根据本发明提供的上述多业务调度方法,当两个或以上的业务接收队列对 应的当前权值相等时,优先选择优先级高的业务接收队列。当两个或以上的业 务接收队列对应的当前权值相等,且优先级也相同时,若只能选择其中的部分业务接收队列进行调度,可以进行任意选择。
上述步骤S102中,确定出每一个业务接收队列对应的当前权.值的一种具 体方法为
确定业务接收队列在上一个调度扫描周期是否被选择,当业务接收队列在 上一个调度扫描周期被选择时,其对应的当前权值为其上一个调度扫描周期对 应的当前权值与其优先级值的N(N > 1)倍的和值;否则,其对应的当前权值 为其上一个调度扫描周期对应的当前权值,即不进行当前权值更新。其中,每 一个业务接收队列设置相同的初始权值,不同优先级的业务接收队列对应的优 先级值不等。为方便计算,不同优先级的业务接收队列对应的优先级值的差值, 为不小于l的正整数。在第一个调度扫描周期内,每一个业务接收队列对应的 当前权值为设置的初始权值。
下面用一个具体的例子,来说明当前权值的计算方法。
假设在视频监控系统中有四种不同类型的业务,分别为实时监控业务、 录像回放业务、告警上报业务和云台控制业务。该四种业务的业务请求被分别 存储到对应的四个业务接收队列中,分别为实时监控业务接收队列、录像回 放业务接收队列、告警上报业务接收队列和云台控制业务接收队列。设定
实时监控业务接收队列的优先级值为1;
录像回放业务接收队列的优先级值为2;
告警上报业务接收队列的优先级值为3;
云台控制业务接收队列的优先级值为4;
且设定上述四个业务接收队列的初始权值都为0。
本发明用较大的优先级值来表示相应的业务接收队列对应的优先级较低。 按照上述设定,上述四个业务接收队列的对应优先级从高到低的排序为实时 监控业务接收队列、录像回放业务接收队列、告警上报业务接收队列和云台控 制业务接收队列。各业务接收队列的优先级实质代表了其存储的相应业务类型 的业务请求的优先级。上述四个业务接收队列的优先级值间隔为1,优先级值间隔也可以为2或 其它值(为方便运算, 一般取正整数)。按照本发明上述提供的业务接收队列 的当前权值确定方法,优先级值间隔越大,优先级高的业务"^妄收队列计算出的 当前权值比较小的概率更大,从而使得优先级高的业务"t矣收队列中的业务被调 度执行的机会更多。因此,可以根据系统中各种类型业务的重要性,以及各种 类型业务的业务请求量的多少,适当地选择优先级值间隔。不失一般性,两相 邻优先级设置的对应优先级值之间的差值可以相等,也可以不等。
按照上述设定,以视频监控系统仅设置一个任务执行队列(即一次仅能选
择出一个业务接收队列进行调度)为例,在12个调度扫描周期中,每一个调 度扫描周期执行后,各业务接收队列对应的当前权值结果如下表一所示
表一:
优先级间p鬲=1权值
业务接收 队列优先 级值初始 权值123456789101112执行次数
实时监控10111233445555
录像回放20022222444466■
告警上报30003333336666i>
云台控制400004444444482
在第l个调度扫描周期内,上述四个业务接收队列对应的当前权值为设置
的初始权值o。由于上述四个业务接收队列对应的初始斥又值都相等,因此,优
先选择优先级最高的实时监控业务接收队列,将实时监控业务接收队列中的一
个业务请求,调度到任务执行队列中;
在第2个调度扫描周期内,首先需要确定上述四个业务接收队列对应的当
前权值,即:上述四个业务接收队列对应的当前权值为第一个调度扫描周期执
行后,上述四个业务接收队列对应的当前权值。其中,由于实时监控业务接收
队列在第1个调度扫描周期内被调度,其对应的当前权值需要更新,更新后的
当前权值为其上一个调度扫描周期对应的当前权值0与其对应的优先级值1的
iiN倍的和值,为简便起见,取N^,则实时监控业务接收队列对应的当前权值 M1=0+1=1;其余三个业务接收队列对应的当前片又值不进4亍更新,仍为其上一 个调度扫描周期对应的当前权值,即录像回放业务接收队列对应的当前权值 M2=0;告警上报业务接收队列对应的当前权值M3二0;云台控制业务接收队列 对应的当前权值M4=0。则在第2个调度扫描周期内确定出的四个业务接收队 列(按优先级值从小到大的顺序排列)对应的当前权值(即第1个调度扫描周 期执行后各业务接收队列对应的当前权值)为1, 0, 0, 0。由于已假设视频 监控系统仅设置一个任务执行队列, 一次只能调度一个任务,则需要在四个业 务接收队列中,取最小的当前权值O,由于录像回放业务接收队、告警上报业 务接收队列和云台控制业务接收队列对应的当前权值都为0,因此,优先选择 其中优先级最高的录像回放业务接收队,将录像回放业务接收队中的一个业务 请求,调度到任务执行队列中;
同理,在第3个调度扫描周期内,首先需要确定上述四个业务接收队列对 应的当前权值,即上述四个业务接收队列对应的当前权值为第2个调度扫描 周期执行后,上述四个业务接收队列对应的当前权值。其中,由于录4象回^:业 务接收队列在第2个调度扫描周期内被调度,其对应的当前权值需要更新,更 新后的当前权值为其上一个调度扫描周期对应的当前权值0与其对应的优先级 值2的N倍的和值,为简便起见,取N-l,则录像回放业务接收队列对应的当 前权值M2=0+2=2;其余三个业务接收队列对应的当前一又值不进行更新,仍为 其上一个调度扫描周期对应的当前权值,即实时监控业务接收队列对应的当 前权值Ml=l;告警上报业务接收队列对应的当前权值M3=0;云台控制业务 接收队列对应的当前权值M4二0。则在第3个调度扫描周期内确定出的四个业 务接收队列(按优先级值从小到大的顺序排列)对应的当前权值(即第2个调 度扫描周期执行后各业务接收队列对应的当前权值)为1, 2, 0, 0。由于已 假设视频监控系统仅设置一个任务执行队列, 一次只能调度一个任务,则需要 在四个业务接收队列中,取最小的当前权值O,由于告警上报业务接收队列和云台控制业务接收队列对应的当前权值都为0,因此,优先选择其中优先级最 高的告警上报业务接收队,将告警上报业务接收队中的一个业务请求,调度到
任务执行队列中;
按照上述相同的方法,依次确定出
第4个调度扫描周期内,确定上述四个业务接收队列对应的当前权值(即 第3个调度扫描周期执行后各业务接收队列对应的当前权值)为1, 2, 3, 0; 选择当前权值最小的云台控制业务接收队列(其对应的当前权值为0)中的一 个业务请求,调度到任务执行队列中;
第5个调度扫描周期内,确定上述四个业务接收队列对应的当前权值(即 第4个调度扫描周期执行后各业务接收队列对应的当前权值)为1, 2, 3, 4; 选择当前权值最小的实时监控业务接收队列(其对应的当前权值为1)中的一 个业务请求,调度到任务执行队列中;
第6个调度扫描周期内,确定上述四个业务接收队列对应的当前权值(即 第5个调度扫描周期执行后各业务接收队列对应的当前权值)为2, 2, 3, 4; 由于实时监控业务接收队列和录像回放业务接收队列对应的当前权i直均为2, 选择优先级相对较高的实时监控业务接收队中的一个业务请求,调度到任务执 行队列中;
第7个调度扫描周期内,确定上述四个业务接收队列对应的当前权值(即 第6个调度扫描周期执行后各业务接收队列对应的当前权值)为3, 2, 3, 4; 选择当前权值最小的录像回放业务接收队列(其对应的当前权值为2)中的一 个业务请求,调度到任务执行队列中;
第8个调度扫描周期内,确定上述四个业务接收队列对应的当前权值(即 第7个调度扫描周期执行后各业务接收队列对应的当前权值)为3, 4, 3, 4; 由于实时监控业务接收队列和告警上报业务接收队列对应的当前权值均为3, 选择优先级相对较高的实时监控业务接收队列中的一个业务请求,调度到任务 执行队列中;
13第9个调度扫描周期内,确定上述四个业务接收队列对应的当前权值(即
第8个调度扫描周期执行后各业务接收队列对应的当前权值)为4, 4, 3, 4; 选择当前权值最小的告警上报业务接收队列(其对应的当前权值为3)中的一 个业务请求,调度到任务执行队列中;
第10个调度扫描周期内,确定上述四个业务接收队列对应的当前权值(即 第9个调度扫描周期执行后各业务接收队列对应的当前权值)为4, 4, 6, 4; 由于实时监控业务接收队列、录像回放业务接收队列和云台控制业务接收队列 对应的当前权值均为4,选择优先竭目对较高的实时监控业务接收队中的一个 业务请求,调度到任务执行队列中;
第11个调度扫描周期内,确定上述四个业务接收队列对应的当前权值(即 第IO个调度扫描周期执行后各业务接收队列对应的当前权值)为5, 4, 6, 4;由于录像回放业务接收队列和云台控制业务接收队列对应的当前权值均为 4,选择优先级相对较高的录像回放业务接收队列中的一个业务请求,调度到 任务执行队列中;
第12个调度扫描周期内,确定上述四个业务接收队列对应的当前权值(即 第11个调度扫描周期执行后各业务接收队列对应的当前权值)为5, 6, 6, 4;选择当前权值最小的云台控制业务接收队列(其对应的当前权值为4)中的 一个业务请求,调度到任务执行队列中。
执行第12个调度扫描周期后,各业务接收队列对应的当前一又值变为5, 6, 6, 8。
执行上述12次调度后,可以看出优先级最高的实时监控业务接收队列 被调度了5次,其对应的调度机率为5/12,约占42%;录像回放业务接收队列 被调度了3次,其对应的调度机率为3/12,占25%;告警上报业务接收队列被 调度了 2次,其对应的调度机率为2/12,约占16.5%,;云台控制业务接收队 列被调度了 2次,其对应的调度机率为2/12,约占16.5%。即在12个调度扫 描周期内,每个业务接收队列都被调度到,且优先级较高的业务接收队列被调度的机会较多。
如果上述各业务接收队列被调度的机率比较合适,为了保持这个调度机 率,可以设定一个阈值,将各业务接收队列的当前权值与该设定的阈值比较, 当每一个业务接收队列的当前权值都不小于该阈值时,将每一个业务接收队列 的当前权值更新为设置的初始权值。
仍以表一所示调度过程为例,可以设定阈值为5,当执行12次调度后,四 个业务接收队列对应的当前权值都不小于该阔值5,因此,将四个业务接收队 列对应的当前权值都更新为设置的初始权值0,则下一轮的12个调度扫描周 期,会执行与表一相同的调度过程。
上述实例中,业务接收队列对应的当前权值的更新可表示为 当前权值=上一个调度扫描周期对应的当前权值+N x优先级值,其中N=l。 实际中,N可以取不小于1的任意值,当然为了计算简便,N—般取正整 数。N的取值越大,不同优先级的业务接收队列计算出的当前权值之差就越大, 这样,优先级较低的业务接收队列被调度的机率就越小。因此,可以根据不同 的多业务系统的实际需要,合理设置N的取值。
不失一般性,假设视频监控系统设置有X任务执行队列和Y个业务接收 队列,则在每一个调度扫描周期内,需要在Y个业务接收队列中选择出X个 队列。具体为根据Y个业务接收队列对应的当前权值从小到大的顺序进行排 队,按当前权值从小到大的顺序选择出X个业务接收队列,从选择出的X个 业务接收队列中分别获取一个业务请求作为一个任务,调度到视频监控系统设 置的X个任务执行队列中执行。当X4,即视频监控系统仅设置有一个任务执 行队列时(如上述具体实施例所述),则按当前权值从小到大的顺序选择出1 个业务接收队列,其实质就是在全部业务接收队列中选4奪当前权值最小的业务 接收队列进行调度。
根据本发明采用的当前权值更新方法,对上一个调度扫描周期未被调度的 业务接收队列对应的当前权值不进行更新,仅更新上一个调度扫描周期被调度的业务接收队列的当前权值,且进行更新时,是在上一个调度扫描周期对应的 当前权值的基础上,再加上不小于其优先级值的数,因此,当一个业务接收队 列被调度的次数较多时,其对应的当前权值必然相应增大,后续的调度机率就 会相对减少。因此,采用本发明方案,既体现出让优先级高的业务接收队列中 的业务优先被调度执行,同时也给调度次数较少的优先级较低的业务接收队列 合理的调度机会,从而实现多业务的质量保证。
实际应用中,为了保证紧急业务的可靠快速执行,在业务接收队列中,单 独设置紧急业务接收队列,在任务执行队列中单独设置紧急任务执行队列。在 当前调度扫描周期内,扫描到紧急业务接收队列中存储有紧急业务请求时,直 接获取一个紧急业务请求作为一个紧急任务,调度到紧急任务执行队列中去执 行。
对于多业务系统,如视频监控系统, 一般设置有包含紧急任务执行队列的
至少两个任务执行队列,对于单核CPU系统,每一个任务执行队列对应一个 线程。对于多核CPU系统,将每一个任务执行队列绑定到对应的CPU,每一 个CPU可以启动一个或多个线程,由每一个线程分别执行一个任务执行队列
中存储的任务。
为了保证紧急任务的可靠执行,对于紧急任务执行线程,当没有紧急任务
需要处理时,处于休眠状态;以便有紧急任何需要处理时,立即启动,并执行 紧急任务。
基于同一发明构思,根据本发明上述提供的多业务调度方法,本发明还提 供一种多业务调度装置,其结构示意图如图2所示,包括
扫描单元21,用于在当前调度扫描周期内,扫描按业务类型存储业务请求 的各业务接收队列,确定出当前存储有业务请求的业务接收队列;
当前权值确定单元22,用于在存储有业务请求的业务接收队列中,分别确 定出每一个业务接收队列对应的当前权值;其中
当前权值与对应的业务接收队列预设的优先级值正相关,并随业务接收队列的调度次数增加而增加;对应的业务接收队列的优先级越低,优先级值越大;
队列选择单元23,用于根据任务执行队列的数量,按当前权值从小到大的 顺序,选择相应数量的业务接收队列;
调度执行单元24,用于从选择出的业务接收队列中分别获取一个业务请求 作为一个任务,调度到不同的任务执行队列中。
当前权值确定单元22的模块结构示意图如图3所示,包括
存储模块221,用于存储每一个业务接收队列的优先级及预设的对应优先 级值,存储为每一个业务接收队列设置的相同的初始权值,以及存储有业务请 求的业务接收队列对应的当前权值;
确定模块222,用于当业务接收队列在上一个调度扫描周期被选择时,确 定其对应的当前权值为存储;^莫块221中存储的其上一个调度扫描周期对应的当 前权值与其对应的优先级值的N倍的和值,并用确定出的当前权值更新存储才莫 块221中的对应当前权值;且N不小于1;否则,确定其对应的当前权值为其 上一个调度扫描周期对应的当前权值;其中在第一个调度扫描周期内,确定每 一个业务接收队列对应的当前权值为设置的初始权值。
确定模块222还用于,将每一个业务接收队列对应的当前权值与设定的阈 值比较;当每一个业务接收队列对应的当前权值都不小于设定的阈值时,将每 一个业务接收队列对应的当前权值更新为设置的初始权值。
当各业务接收队列中包含紧急业务接收队列,任务执行队列中包含紧急任 务执行队列时,扫描单元21在当前调度扫描周期内,扫描到紧急业务接收队 列中存储有紧急业务请求时,通知调度执行单元24;调度执行单元24接收扫 描单元21的通知,从紧急业务接收队列获取一个紧急业务请求作为一个紧急 任务,调度到紧急任务执行队列中。
基于同一发明构思,根据本发明上述提供的多业务调度方法,本发明还提 供一种多业务调度系统,其结构示意图如图4所示,包括
业务接收装置41,用于接收业务请求,并根据业务请求所属业务类型,将接收的业务请求存储其所属业务类型对应的业务接收队列中;
业务接收队列存储装置42,用于存储业务接收队列;
业务调度装置43,用于在当前调度扫描周期内,扫描按业务类型存储业务 请求的各业务接收队列,确定出当前存储有业务请求的业务接收队列;以及
业务调度装置43还用于,在存储有业务请求的业务接收队列中,分别确 定出每一个业务接收队列对应的当前权值;其中,当前4又值与对应的业务接收 队列预设的优先级值正相关,并随对应的业务接收队列的调度次数增加而增 加;优先级值越大,对应的业务接收队列的优先级越低;以及
业务调度装置43还用于,根据任务执行队列的数量,按所述当前权值从 小到大的顺序,选择相应数量的业务接收队列;以及
业务调度装置43还用于,从选择出的业务接收队列中分别获取一个业务 请求作为 一个任务,调度到不同的所述任务执行队列中;
任务执行队列存储装置44,用于存储任务执行队列;
业务执行装置45,用于执行调度到任务执行队列中的各任务。
一实施例中,业务接收队列存储装置42中存储的业务接收队列包括紧急 业务接收队列;任务执行队列存储装置44中存储的任务执行队列包括紧急任 务执行队列;业务接收装置41接收到紧急业务请求时,将接收的紧急业务请 求存储到紧急业务接收队列中;业务调度装置43在当前调度扫描周期内,扫 描到紧急业务接收队列中存储有紧急业务请求时,从紧急业务接收队列获取一 个紧急业务请求作为一个紧急任务,调度到紧急任务执行队列中;业务执行装 置45 ,执行调度到紧急任务执行队列中的紧急任务。
综上所述,本发明通过设定多业务系统中存储各类型业务的对应业务接收 队列的优先级值(优先级较高,对应的优先级值较小),并确定各业务接收队 列的当前权值,在一个调度调度扫描周期内,选择当前权值较小的业务接收队 列进行调度。由于当前权值与业务接收队列预设的优先级值正相关,并随该业 务接收队列的调度次数的增加而增加,因此,当业务接收队列的当前权值较小时, 一方面可表明该业务接收队列的优先级较高,另一方面也可表明该业务接 收队列被调度的次数较少。因此,本发明采用选择当前权值较小的队列进行调 度,既体现出让优先级高的业务接收队列中的业务优先被调度执行,同时也给 调度次数较少的业务接收队列合理的调度机会,从而实现多业务的质量保证。
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种多业务调度方法,其特征在于,包括在当前调度扫描周期内,扫描按业务类型存储业务请求的各业务接收队列,确定出当前存储有业务请求的业务接收队列;在所述存储有业务请求的业务接收队列中,分别确定出每一个业务接收队列对应的当前权值;所述当前权值与对应的业务接收队列预设的优先级值正相关,并随对应的业务接收队列的调度次数增加而增加;所述优先级值越大,对应的业务接收队列的优先级越低;根据任务执行队列的数量,按所述当前权值从小到大的顺序,选择相应数量的业务接收队列;从选择出的业务接收队列中分别获取一个业务请求作为一个任务,调度到不同的所述任务执行队列中。
2、 如权利要求1所述的方法,其特征在于,若两个或以上的业务接收队 列对应的当前4又值相等,优先选择优先级高的业务4妄收队列。
3、 如权利要求2所述的方法,其特征在于,若两个或以上的业务接收队 列对应的当前权值相等,且优先级相同,当需要选择其中的部分业务接收队列 时,进行任意选4奪。
4、 如权利要求3所述的方法,其特征在于,所述确定出每一个业务接收 队列对应的当前权值,具体包括当业务接收队列在上一个调度扫描周期被选择时,其对应的当前权值为其 上一个调度扫描周期对应的当前权值与其对应的优先级值的N倍的和值,N不小于l;否则,其对应的当前权值为其上一个调度扫描周期对应的当前权值; 其中,每一个业务接收队列设置有相同的初始权值,在第一个调度扫描周 期内,每一个业务接收队列对应的当前权值为设置的所述初始权值。
5、 如权利要求4所述的方法,其特征在于,不同优先级的业务接收队列对应的所述优先级值不等,且不同优先级的业务接收队列对应的所述优先级值 的差值,为不小于1的正整数。
6、 如权利要求5所述的方法,其特征在于,还包括将每一个业务接收 队列对应的当前权值与设定的阈值比较;当每一个业务接收队列对应的当前权值都不小于所述阈值时,将每一个业 务接收队列对应的当前权值更新为设置的所述初始权值。
7、 如权利要求1-6任一所述的方法,其特征在于,所述各业务接收队列 中包含紧急业务接收队列,所述任务执行队列中包含紧急任务执行队列;在当前调度扫描周期内,扫描到所述紧急业务接收队列中存储有紧急业务 请求时,获取一个紧急业务请求作为一个紧急任务,调度到所述紧急任务执行 队列中。
8、 一种多业务调度装置,其特征在于,包括扫描单元,用于在当前调度扫描周期内,扫描按业务类型存储业务请求的 各业务接收队列,确定出当前存储有业务请求的业务接收队列;当前权值确定单元,用于在所述存储有业务请求的业务接收队列中,分别 确定出每一个业务接收队列对应的当前权值;所述当前权值与对应的业务接收 队列预设的优先级值正相关,并随对应的业务接收队列的调度次数增加而增 加;所述优先级值越大,对应的业务接收队列的优先级越低;队列选择单元,用于根据任务执行队列的数量,按所述当前权值从小到大 的顺序,选才奪相应数量的业务接收队列;调度执行单元,用于从选择出的业务接收队列中分别获取一个业务请求作 为一个任务,调度到不同的所述任务执行队列中。
9、 如权利要求8所述的装置,其特征在于,所述当前权值确定单元包括 存储模块,用于存储每一个业务接收队列的优先级及预设的对应优先级值,存储为每一个业务接收队列设置的相同的初始权值,以及存储有业务请求 的业务接收队列对应的当前权值;确定模块,用于当业务接收队列在上一个调度扫描周期被选择时,确定其 对应的当前权值为所述存储模块中存储的其上一个调度扫描周期对应的当前 权值与其对应的优先级值的N倍的和值,并用确定出的当前权值更新所述存储模块中的对应当前权值;N不小于1;否则,确定其对应的当前权值为其上一个调度扫描周期对应的当前权值; 其中,在第一个调度扫描周期内,确定每一个业务接收队列对应的当前权值为设置的所述初始权值。
10、 如权利要求9所述的装置,其特征在于,所述确定模块还用于,将每 一个业务接收队列对应的当前权值与设定的阈值比较;当每一个业务接收队列对应的当前权值都不小于所述阈值时,将每一个业务接收队列对应的当前权值更新为设置的所述初始权值。
11、 如权利要求8-10任一所述的装置,其特征在于,所述各业务接收队列 中包含紧急业务接收队列,所述任务执行队列中包含紧急任务执行队列;所述扫描单元在当前调度扫描周期内,扫描到所述紧急业务接收队列中存储有紧急业务请求时,通知所述调度执行单元;所述调度执行单元,还用于接收所述扫描单元的通知,从所述紧急业务接 收队列获取一个紧急业务请求作为一个紧急任务,调度到所述紧急任务执行队 列中。
12、 一种多业务调度系统,其特征在于,包括业务接收装置,用于接收业务请求,并根据所述业务请求所属业务类型, 将接收的业务请求存储其所属业务类型对应的业务接收队列中; 业务接收队列存储装置,用于存储业务接收队列;业务调度装置,用于在当前调度扫描周期内,扫描按业务类型存储业务请 求的各业务接收队列,确定出当前存储有业务请求的业务接收队列;以及在所述存储有业务请求的业务接收队列中,分别确定出每一个业务接收队 列对应的当前权值;所述当前权值与对应的业务接收队列预设的优先级值正相关,并随对应的业务接收队列的调度次数增加而增加;所述优先级值越大,对 应的业务接收队列的优先级越低;以及根据任务执行队列的数量,按所述当前权值从小到大的顺序,选择相应数 量的业务接收队列;以及从选择出的业务接收队列中分別获取一个业务请求作为一个任务,调度到不同的所述任务执行队列中;任务执行队列存储装置,用于存储任务执行队列;业务执行装置,用于执行调度到所述任务执行队列中的各任务。
13、如权利要求12所述的系统,其特征在于,所述业务接收队列存储装置中存储的业务接收队列包括紧急业务接收队列;所述任务执行队列存储装置中存储的任务执行队列包括紧急任务执行队列;所述业务接收装置接收到紧急业务请求时,将接收的紧急业务请求存储到 所述紧急业务接收队列中;所述业务调度装置在当前调度扫描周期内,扫描到所述紧急业务接收队列 中存储有紧急业务请求时,从所述紧急业务接收队列获取一个紧急业务请求作 为一个紧急任务,调度到所述紧急任务执行队列中;所述业务执行装置,执行调度到所述紧急任务执行队列中的紧急任务。
全文摘要
本发明公开了一种多业务调度方法、装置与系统。在当前调度扫描周期内,扫描按业务类型存储业务请求的各业务接收队列,确定出当前存储有业务请求的业务接收队列;在存储有业务请求的业务接收队列中,分别确定出每一个业务接收队列对应的当前权值;所述当前权值与对应的业务接收队列预设的优先级值正相关,并随对应的业务接收队列的调度次数增加而增加;所述优先级值越大,对应的业务接收队列的优先级越低;根据任务执行队列的数量,按所述当前权值从小到大的顺序,选择相应数量的业务接收队列;从选择出的业务接收队列中分别获取一个业务请求作为一个任务,调度到不同的所述任务执行队列中。采用本发明,能实现多业务的质量保证。
文档编号H04N7/18GK101510164SQ20091008068
公开日2009年8月19日 申请日期2009年3月25日 优先权日2009年3月25日
发明者张智宇 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1