1. 分布式任务job特征
如何保证分布式Job唯一性
- 使用Zookeeper实现分布式锁(效率不是很高)
- 在配置文件中加上启动定时job开关(有一台挂了就完了)
- 启动的时候使用数据库唯一标识
不推荐!! - 使用分布式任务调度平台(XXL-Job、Elastric-Job依赖zk)
2. 分布式任务调度平台xxl-job
- 支持job集群 job负载均衡轮训机制
- 支持job补偿 如果job执行失败,会自动实现重试机制,如果重启多次失败,发送邮件通知运维人员
- 支持job日志记录
- 动态配置定时规则
- …
3. xxl-job执行定时job原理
@JobHandler 底层实现 value=demoJobhandler 名称对应存放的class地址
使用反射机制执行execute方法