azkaban的web-server模块,除了提供管理页面配置,还是定时任务的触发入口,但是官方文档却没有说明是否可以多节点部署(exec-server有明确说能多节点部署)。

看网上有人说azkaban的定时任务是基于Quartz的,可以进行多节点部署,于是试了一下,发现根本不行(3.81.0版本)。启动两个节点会导致定时任务重复执行两次。

查看github issue,发现确实是设计不支持。

然后去看源码,发现默认定时任务根本不是Quartz。。。数据库里面Quartz相关的表都没数据的。不过确实有个参数可以控制是否开启Quartz,但是试了一下发现好多坑,官方文档里面也压根没提到Quartz的。

不过web-server只是负责定时任务而已,不负责具体的任务执行,没啥压力,挂掉的几率应该很低,通过supervisor启动,防止意外挂掉,应该也够用了。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐