springboot 定时器_工具-用elastic-job-lite玩转SpringBoot定时器管理

1.前言

当我们用SpringBoot编写定时任务处理业务,但是每次定时的配置都需要修改配置文件,然后重启才生效。有没有办法不需要重启服务,又能测试定时器Job的功能是否正常?

今天跟大家分享一个开源工具,希望能帮助到有这个需求的童鞋们。

e38065415c642b6a0090b4f13b01e602.png

2.概念

Elastic-Job是当当网开源的分布式任务调度解决方案,是业内使用较多的分布式调度解决方案。

Elastic-Job-Lite定位为轻量级无中心化解决方案,使用jar包的形式提供分布式任务的协调服务,,外部仅仅依赖Zookeeper。

今天跟大家分享的就是Elastic-Job-Lite,从如何搭建,到使用触发Job。

3.部署

3.1下载编译

$ git clone https://github.com/elasticjob/elastic-job-lite.git$ cd elastic-job-lite$ mvn clean install -Dmaven.test.skip=true

编译完毕后会生成一个压缩包,这里的版本是以3.0.0.M1为例。

$ ls -lrt elastic-job-lite-console/target/elastic-job-lite-console-3.0.0.M1-SNAPSHOT.tar.gz 

3.2部署启动

$ tar zxf elastic-job-lite-console-3.0.0.M1-SNAPSHOT.tar.gz$ cd elastic-job-lite-console-3.0.0.M1-SNAPSHOT/bin$ ./start.sh 
  • 默认配置文件是auth.properties, 配置管理员及访客用户名及密码
root.username=rootroot.password=rootguest.username=guestguest.password=guest
  • 8899为默认端口号,可通过启动脚本输入-p自定义端口号。

3.3验证

访问http://localhost:8899/即可访问控制台

678c9242432781a7be8cfd23301b9547.png

4.使用教程

当我们用SpringBoot实现了Job服务,我们可以根据提供的定时任务信息,在这个开源网页平台填入相应的信息,那么就可以管理对应的Job服务。

4.1配置注册中心

1.左边菜单点击【全局配置】选中【注册中心配置】,然后出现一个已配置列表,在列表的分页显示下方有个【添加】按钮进行添加。

90ef24973f45f8fcc811d1c111c15a86.png

2.注册中心信息填写

  • 注册中心名称:自己自定义填写。
  • 注册中心地址:填写对应服务的zk信息,多个用逗号分隔。
  • 命名空间:填写对应服务的zk命名空间namespace。
  • 登录凭证:可不填,默认zookeeper不需要填写,除非设置了zookeeper相关信息。
ff9216735ba72a79da0153626b7dfb8f.png

3.填写完之后,点击右下角【提交】按钮,即完成。

4.列表中出现新增的注册配置,然后点击该配置最后的操作项,【连接】,则连接上zookeeper。

7c70f0e2b2394e1038c0135f4807ff39.png

4.2 查看这个zookeeper注册中心对应的作业

上面配置完注册中心后,会显示对应的定时任务,在左侧【作业操作】下点击【作业维度】,即可查看当前挂在zookeeper的命名空间下的所有任务,提供删除,编辑,触发,失效等一系列功能。

43ab3f6a310d8052ef8b01c4fc8bd703.png

4.3 不同状态下对应的作业按钮

①作业维度下Job已生效的状态为正常,操作下有5个按钮:修改、详情、触发、失效、终止;

②作业维度下Job状态为已失效时,操作下有4个按钮:修改、详情、生效、终止;

③作业维度下Job状态为分片待调整时,操作下有3个按钮:修改、详情、终止;

④作业维度下Job状态为已下线时,操作下有2个按钮:修改、删除。

4.4 修改job的触发时间

1.点击作业维度最后一列操作下的"修改"按钮进入修改作业页面,如图所示:

1150568319a0d01c3f00d5c629c0461f.png

2.修改“Cron表达式”里的时间格式,改成你想要执行的时间策略,提交修改。

这样到了指定的时间,就会执行这个作业Job,是不是很简单。

4.5 实时触发Job

①处于分片待调整状态的Job,需要更改Cron表达式后程序执行了一次或者springboot的程序执行过一次作业,状态才会变为正常。可以点击“修改”按钮,修改表达式来修改触发器触发的时间;

②job状态显示为正常时,才可以点击“触发”按钮直接触发;

这样触发之后,就是实时的触发Job,我们就直接观察java程序的日志,看业务是否正常。

5.结束语

是不是很简单,再也不需要改配置文件重复Java服务了。


喜欢本文的童鞋,可以关注我+收藏,不明白的地方也可以评论留言。

6bf061d3ae217ea626ef95ce548aef33.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值