《ElasticJob 官网》
ElasticJob 用于处理分布式定时任务的需求,由于它是分布式的,所以它就需要依赖一些分布式组件,用于分布式锁的功能实现,而 ElasticJob 则依赖 Zookeeper 实现分布式锁。所以在使用之前就需要先 安装 Zookeeper。
ElasticJob 可以通过设置分片,编写分片逻辑,同一定时任务由多台服务器拆分执行,同时它有定时任务执行日志事件的数据库溯源配置
Elastic job 的使用
导入依赖:
<dependency> <groupId>com.dangdang</groupId> <artifactId>elastic-job-lite-core</artifactId> <version>2.1.4</version></dependency><dependency> <groupId>com.dangdang</groupId> <artifactId>elastic-job-lite-spring</artifactId> <version>2.1.4</version></dependency>
使用 ElasticJob 主要配置流程,如下:
JobScheduler
(启动作业):ZookeeperRegistryCenter
(Zookeeper 注册中心配置)LiteJobConfiguration
(Lite作业根配置) ->JobCoreConfiguration
(作业核心配置) ->SimpleJobConfiguration
(SIMPLE 类型配置,最常用的类型) ->SimpleJob
(作业逻辑实际开发)
如果结合使用 Spring 的 XML
配置,会简单很多。
这里结合 官方文档,做出了这个 Demo 包含了 xml
配置和 注释配置 两个实现方式。
Elastic Console
参考文章:《elastic-job、elastic-job-lite-console使用案例》
在 github 上下载对应的版本 zip
,这边下载的是 2.1.4
,直接在 window 系统下解压,命令行进入对应的解压目录,输入以下命令:
mvn clean install -Dmaven.test.skip=true
完成后,进入对应目录下的 elastic-job-lite\elastic-job-lite-console\target
文件夹中,复制 elastic-job-lite-console-2.1.4.tar.gz
到 Linux 服务器,解压后打开对应的 start.sh
文件,然后浏览器访问:ip 地址:8899
,即可打开 ElasticJob 的控制台(注意打开 8899
防火墙端口)