问题一:schedulerx2 中的这两个参数的区别是什么 ?如果我想达到子任务顺序执行 需要两个都改成1吗 ?在schedulerx控制台 只看到子任务单机并发数的配置,代表的是DispatcherSize还是ConsumerSize啊?问题二:那如果我要达到顺序执行MapReduce的子任务 现在还有方法吗 ?包括代码调用和控制台的配置?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
Schedulerx2是阿里巴巴自研的基于Akka架构的新一代分布式任务调度平台,它提供了定时、任务编排、分布式跑批等功能。在这个平台上,子任务顺序执行的配置涉及到两个参数:DispatcherSize
和ConsumerSize
。其中,DispatcherSize
表示每个机器上的线程池大小,而ConsumerSize
则表示每个消费者(即任务处理者)的消费速度。这两个参数的设定值会影响任务的并发执行数量。
对于你的问题一,如果希望子任务顺序执行,需要将这两个参数都设置为1。然而,需要注意的是,将这两个参数都设置为1会导致任务以串行的方式执行,可能会对整体的任务处理效率产生影响。
关于问题二,如果你想要实现MapReduce任务的子任务顺序执行,目前的方法是通过在代码中进行控制。具体来说,你可以在Map函数中将数据按照键值进行分组,然后依次处理每个组内的数据,从而实现子任务的顺序执行。至于在Schedulerx控制台中的配置,目前并未看到与子任务顺序执行直接相关的设置选项。