Linux下分布式任务调度XXL-JOB基础环境部署
Posted 緈諨の約錠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下分布式任务调度XXL-JOB基础环境部署相关的知识,希望对你有一定的参考价值。
文章目录
1 什么是xxl-job
XXL-JOB是美团点评开源的轻量级分布式任务调度平台。该项目于2015年11月发布第一个版本1.0,目前最新版本2.3.0;
XXL-JOB在国内线上生产环境的案例使用比较多,同时也是比较受欢迎的国产开源软件之一,这里笔者简单记录下Linux下xxl-job环境的搭建过程。
2 获取源码包
下载源码: https://github.com/xuxueli/xxl-job
这里笔者以最新的版本为例:https://github.com/xuxueli/xxl-job/archive/refs/tags/2.3.0.tar.gz
xxl-job文档: https://www.xuxueli.com/xxl-job/
3 需要依赖的环境
因为需要打包,所以要有Maven
环境(可参考我另一篇博文进行配置:https://blog.csdn.net/smilehappiness/article/details/116464543)
因为部署的是jar应用,启动时需要依赖Jdk1.8+
因为xxl-job需要存储数据,需要依赖·mysql
数据库(可参考我另一篇博文进行配置:https://blog.csdn.net/smilehappiness/article/details/105344516)
4 上传并解压源码包(可以使用IDEA工具直接打开项目,打包可运行的jar服务)
使用xftp或者其他工具上传源码包到Linux服务器上,然后解压源码包:
tar -zxvf xxl-job-2.3.0.tar.gz -C /usr/local
5 初始化必要的数据库和表
在源码包中,/xxl-job/doc/db/tables_xxl_job.sql
,导入到mysql中
执行sql脚本后,会生成以下8张表:
6 修改xxl-job-admin的配置
位置: /xxl-job/xxl-job-admin/src/main/resources/application.properties
使用命令修改必要参数: vim /usr/local/xxl-job-2.3.0/xxl-job-admin/src/main/resources/application.properties
主要改这两个地方: 修改端口号(可以不改但是不能冲突),另外,数据库连接改为自己的mysql的用户名字和密码
7 打包项目,启动xxl-job服务
-
Linux配置maven环境
进入到解压的文件夹下(/usr/local/xxl-job-2.3.0/)执行:
mvn package
会在target目录下生成可运行xxl-job-admin-2.3.0.jar
包
(注:这里最好使用IDEA工具打包,因为Linux上运行maven命令下载依赖超级慢,笔者用了40min才打包完成)
-
编写启动脚本启动xxl-job服务
start.sh脚本
#!/bin/sh var=`find . -name xxl-job-admin-2.3.0.jar` fname=${var##*/} java -jar -Xms128M -Xmx256M -Xmn50M ${fname} >>nohup.out 2>&1& echo $! > service.pid
stop.sh脚本
#!/bin/sh pid=$(cat service.pid) kill -9 $pid rm -rf service.pid
8 访问xxl-job服务
访问地址: http://ip:端口号/xxl-job-admin
,例如:http://127.0.0.1:9999/xxl-job-admin
注:
如果服务器开启了防火墙,需要开放,你上文设置的那个端口号(我的是9999
)才能访问
笔者使用的是阿里云服务器,不仅需要配置安全组,防火墙也需要开放9999端口
-
需要配置安全组
-
如果你的服务器或者虚拟机开启了防火墙,需要开放9999端口
开启9999防火墙端口
firewall-cmd --zone=public --add-port=9999/tcp --permanent
重新加载防火墙配置
firewall-cmd --reload
访问成功后的页面,如下图所示:
9 xxl-job执行器配置
xxl:
job:
accessToken:
admin:
# 这里的9999端口与上面xxl-job-admin配置的端口一致即可
addresses: http://ip:9999/xxl-job-admin
executor:
address:
appname: 服务的应用名称
ip:
port: 1234
logpath: /usr/local/xxl-job-2.3.0/xxl-job-admin/logs
logretentiondays: 30
参考资料链接:https://blog.csdn.net/zpp15603669517/article/details/113942508
好啦,本篇搭建xxl-job教程,就先写到这里啦,希望对老铁们有所帮助~
写博客是为了记住自己容易忘记的东西,另外也是对自己工作的总结,希望尽自己的努力,做到更好,大家一起努力进步!
如果有什么问题,欢迎大家评论,一起探讨
给自己的梦想添加一双翅膀,让它可以在天空中自由自在的飞翔!
以上是关于Linux下分布式任务调度XXL-JOB基础环境部署的主要内容,如果未能解决你的问题,请参考以下文章