开发者社区> 问答> 正文

公平调度器和容量调度器的区别是什么?

公平调度器和容量调度器的区别是什么?

展开
收起
芯在这 2021-12-06 16:27:53 1836 0
1 条回答
写回答
取消 提交回答
  • 公平调度是以pool为单位分配任务slots的,容量调度以queue的方式分配tasktracker的,当都只有一个job的时候,两种调度器都可以利用整个集群的资源; 在每个pool内部可以是以FIFO方式调度也可以是公平方式调度,但是在queue内部只能是以FIFO方式调度,这是公平调度和容量调度的一个区别;

    虽然在queue内部可以设置优先级但是并不支持抢占,在pool内部是支持抢占的,就是可以为某个pool(通常是生产上的用户)分配最低的任务slot,当这个pool得不到最低的资源的时候他就会kill其他的job的task以使自己获得最低的资源,这并不会引起其他的job的失败,因为job也是master-slaver的结构,也是容错的。

    整体总结:

    容量调度:以queue为单位分配任务;每个内部采用FIFO调度;queue可以设置优先级但不支持抢占; 公平调度:以pool为单位分配任务;每个内部可以采用FIFO调度也可以采用公平方式调度;pool内部支持抢占;

    2021-12-06 16:38:06
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载