日常项目中,会有很多需要定时执行的任务,而这些任务的变化比较多,可能随时都要调整,那么对调度的灵活性要求比较高。我们传统的Spring Task或者Quartz,可以实现定时任务调度,但是内置在代码里,修改起来比较麻烦,还会涉及到重新部署。虽然有类似于xxl-job这种老掉牙的系统来做调度,但是比较麻烦,还需要配合代码开发。下面介绍一个强大的灵活的定时任务调度平台:PowerJob
PowerJob 先简单try try
接下来一步步搭建自己的定时任务调度平台
1,下载源代码
解压后如下
2, 修改配置并打包
2.1 打开powerjob-server下面的powerjob-server-starter里的application-daily.properties文件
修改数据库的配置
注意:改成你可以连接的数据库,并在改数据库下新建名为powerjob的schema
2.2 修改完之后退出到 powerjob-server-starter 目录下打包
mvn clean package -Dmaven.test.skip=true
2.3 打开powerjob-server下面的powerjob-worker-samples里的application.properties文件
2.4 改完之后,到powerjob-worker-samples下打包
mvn clean package -Dmaven.test.skip=true
3,部署Jar包
上面第2步中打包完成之后,讲target目录下的包上传到服务器
执行启动命令
#!/bin/bash
APP_DIR=`pwd`
APP_NAME=powerjob-server-starter-4.3.3.jarnohup java -jar $APP_DIR/$APP_NAME > $APP_DIR/nohup.out 2>&1 &
echo "${APP_NAME} start success"
3.1 注意: 先启动powerjob-server, 启动完之后,访问 http://服务器IP:7700
点击执行应用注册,输入你在2.3 步骤中的app名,和自己定义的密码。
3.2 再启动powerjob-worker-samples
之后就可以用刚才的app名和密码登录啦。
4,配置调度任务
新增任务
任务参数: {"url":"https://www.baidu.com","method":"GET","timeout":"3600"}
执行器: tech.powerjob.official.processors.impl.HttpProcessor
5,运行
6,总结
powerjob是目前最灵活的一个可视化在线调度平台了,支持随时修改立即生效,可随时发起调度,支持告警配置。
码字不易,记得点赞关注哦