【发布时间】:2021-04-22 11:04:55
【问题描述】:
Zookeeper 在开源工作流框架 dolphinscheduler 中扮演多个角色,例如 master 和 worker 之间的心跳检测、任务队列、事件监听器和分布式锁。 dolphin-sche framework
是否可以使用数据库(mysql)替换它?主要原因是为了简化项目结构。
【问题讨论】:
标签: workflow apache-zookeeper job-scheduling
Zookeeper 在开源工作流框架 dolphinscheduler 中扮演多个角色,例如 master 和 worker 之间的心跳检测、任务队列、事件监听器和分布式锁。 dolphin-sche framework
是否可以使用数据库(mysql)替换它?主要原因是为了简化项目结构。
【问题讨论】:
标签: workflow apache-zookeeper job-scheduling
DS中的zookeeper主要用作:
把zk换成mysql是要花钱的。
【讨论】:
zk主要承担注册中心的职责,监控应用状态。 zk 在这方面非常成熟,是业界公认的解决方案。 MySQL如果要这样做,技术实现成本会比较大,可能达不到预期的效果。
顺便说一句,他们的团队目前正在做注册表的 SPI 开发,在以后的版本中,也许您可以使用其他组件,例如 etcd,来实现类似的功能。
【讨论】:
目前,系统中的 MasterServer 和 WorkerServer 节点都使用 Zookeeper 进行集群管理和容错。此外,系统还基于 ZooKeeper 进行事件监控和分布式锁定。我们也基于 Redis 实现了队列,但是我们希望 DolphinScheduler 依赖的组件越少越好,所以我们最终去掉了 Redis 的实现。
所以现在 DolphinScheduler 不能在没有 Zookeeper 的情况下正常工作,也许在将来。
DolphinScheduler 系统架构:
更多文档请参考:Official Document。
【讨论】: