标签:
目前定时任务调度系统quartz比较出名,quartz也有集群方案,但把所有任务集中一起就构成了分布式任务系统,耦合性比较高,而且比较重。
我利用zookeeper的特性,设计了一个轻量级的定时任务调度系统。
总体的架构:
总体思路:
1.前端admin负责任务的管理,包含添加任务,删除任务,修改任务到zookeeper(类似数据库)。
2. 后台服务器从zookeeper中获取各自的任务列表。
3. 定时扫描各自的任务列表,任务执行时发送http请求给业务方。
4. 业务方接受到http请求进行业务处理。
具体实现代码参加github(只有雏形,正在完善当中):
https://github.com/nonobank-architect/nono-task-dispatcher
用到的组件:
cron-parser:https://github.com/RedHogs/cron-parser/
curator:https://github.com/apache/curator
标签:
原文地址:http://www.cnblogs.com/davidwang456/p/5161047.html