您当前的位置:首页 > 电脑百科 > 程序开发 > 框架

用elastic-job-lite玩转SpringBoot定时器管理

时间:2020-06-20 17:01:55  来源:  作者:

1.前言

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

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

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

 

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=root
root.password=root
guest.username=guest
guest.password=guest
  • 8899为默认端口号,可通过启动脚本输入-p自定义端口号。

3.3验证

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

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

 

4.使用教程

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

4.1配置注册中心

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

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

 

2.注册中心信息填写

  • 注册中心名称:自己自定义填写。
  • 注册中心地址:填写对应服务的zk信息,多个用逗号分隔。
  • 命名空间:填写对应服务的zk命名空间namespace。
  • 登录凭证:可不填,默认zookeeper不需要填写,除非设置了zookeeper相关信息。
工具-用elastic-job-lite玩转SpringBoot定时器管理

 

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

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

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

 

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

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

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

 

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

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

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

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

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

4.4 修改job的触发时间

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

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

 

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

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

4.5 实时触发Job

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

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

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

5.结束语

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



Tags:定时器管理   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
1.前言当我们用SpringBoot编写定时任务处理业务,但是每次定时的配置都需要修改配置文件,然后重启才生效。有没有办法不需要重启服务,又能测试定时器Job的功能是否正常?今天跟大...【详细内容】
2020-06-20  Tags: 定时器管理  点击:(172)  评论:(0)  加入收藏
▌简易百科推荐
近日只是为了想尽办法为 Flask 实现 Swagger UI 文档功能,基本上要让 Flask 配合 Flasgger, 所以写了篇 Flask 应用集成 Swagger UI 。然而不断的 Google 过程中偶然间发现了...【详细内容】
2021-12-23  Python阿杰    Tags:FastAPI   点击:(6)  评论:(0)  加入收藏
文章目录1、Quartz1.1 引入依赖<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.3.2</version></dependency>...【详细内容】
2021-12-22  java老人头    Tags:框架   点击:(11)  评论:(0)  加入收藏
今天来梳理下 Spring 的整体脉络啦,为后面的文章做个铺垫~后面几篇文章应该会讲讲这些内容啦 Spring AOP 插件 (了好久都忘了 ) 分享下 4ye 在项目中利用 AOP + MybatisPlus 对...【详细内容】
2021-12-07  Java4ye    Tags:Spring   点击:(14)  评论:(0)  加入收藏
&emsp;前面通过入门案例介绍,我们发现在SpringSecurity中如果我们没有使用自定义的登录界面,那么SpringSecurity会给我们提供一个系统登录界面。但真实项目中我们一般都会使用...【详细内容】
2021-12-06  波哥带你学Java    Tags:SpringSecurity   点击:(18)  评论:(0)  加入收藏
React 简介 React 基本使用<div id="test"></div><script type="text/javascript" src="../js/react.development.js"></script><script type="text/javascript" src="../js...【详细内容】
2021-11-30  清闲的帆船先生    Tags:框架   点击:(19)  评论:(0)  加入收藏
流水线(Pipeline)是把一个重复的过程分解为若干个子过程,使每个子过程与其他子过程并行进行的技术。本文主要介绍了诞生于云原生时代的流水线框架 Argo。 什么是流水线?在计算机...【详细内容】
2021-11-30  叼着猫的鱼    Tags:框架   点击:(21)  评论:(0)  加入收藏
TKinterThinter 是标准的python包,你可以在linx,macos,windows上使用它,你不需要安装它,因为它是python自带的扩展包。 它采用TCL的控制接口,你可以非常方便地写出图形界面,如...【详细内容】
2021-11-30    梦回故里归来  Tags:框架   点击:(27)  评论:(0)  加入收藏
前言项目中的配置文件会有密码的存在,例如数据库的密码、邮箱的密码、FTP的密码等。配置的密码以明文的方式暴露,并不是一种安全的方式,特别是大型项目的生产环境中,因为配置文...【详细内容】
2021-11-17  充满元气的java爱好者  博客园  Tags:SpringBoot   点击:(25)  评论:(0)  加入收藏
一、搭建环境1、创建数据库表和表结构create table account(id INT identity(1,1) primary key,name varchar(20),[money] DECIMAL2、创建maven的工程SSM,在pom.xml文件引入...【详细内容】
2021-11-11  AT小白在线中  搜狐号  Tags:开发框架   点击:(29)  评论:(0)  加入收藏
SpringBoot开发的物联网通信平台系统项目功能模块 功能 说明 MQTT 1.SSL支持 2.集群化部署时暂不支持retain&will类型消 UDP ...【详细内容】
2021-11-05  小程序建站    Tags:SpringBoot   点击:(56)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条