日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

1分钟 搭建xxl-job任务调度中心

發布時間:2024/9/27 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 1分钟 搭建xxl-job任务调度中心 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

          • 一、前提環境
            • 1. 安裝java環境
            • 2. 安裝maven打包環境
            • 3. docker安裝mysql
          • 二、搭建xxl-job 服務端(源碼)
          • 三、搭建xxl-job 服務端(docker)
          • 四、常見異常解決方案
            • 4.1. docker中mysql容器的ip怎樣獲取?
            • 4.2. xxl-job 連接數據庫失敗?

一、前提環境
1. 安裝java環境

下載(略)
環境變量

export JAVA_HOME=/app/jdk1.8.0_202 export PATH=$PATH:$GOROOT/bin export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar export PATH=$PATH:${JAVA_HOME}/bin

刷新環境變量

source /etc/profile java -version
2. 安裝maven打包環境
[root@localhost app]# wget https://mirror.bit.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz [root@localhost app]# tar -zxvf apache-maven-3.6.3-bin.tar.gz [root@localhost app]# echo 'export PATH=/app/apache-maven-3.6.3/bin:$PATH' >>/etc/profile [root@localhost app]# source /etc/profile [root@localhost app]# mvn -v Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: /app/apache-maven-3.6.3配置阿里云倉庫鏡像 [root@localhost app]# cd apache-maven-3.6.3/conf/ [root@localhost conf]# vim settings.xml

找到節點添加即可

<mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror>
3. docker安裝mysql

docker 安裝 mysql和Navicat Premium 遠程連接
https://gblfy.blog.csdn.net/article/details/113809710

二、搭建xxl-job 服務端(源碼)

Github地址:https://www.xuxueli.com/xxl-job/

# 調度數據庫初始化SQL腳本” 并執行 調度數據庫初始化SQL腳本” 位置為: /xxl-job/doc/db/tables_xxl_job.sql# 在線下載 wget https://github.com/xuxueli/xxl-job/archive/2.3.0.tar.gz# 解壓 tar -zxvf xxl-job-2.3.0.tar.gz# 配置mysql密碼 vim xxl-job-2.3.0/xxl-job-admin/src/main/resources/application.properties# 項目編譯打包 cd xxl-job-2.3.0/ mvn clean install -DskipTests# xxl-job后臺部署 cd xxl-job-2.3.0/xxl-job-admin/target nohup java -jar xxl-job-admin-2.3.0.jar &# 開放8080端口 firewall-cmd --zone=public --add-port=8080/tcp --permanent# 重啟防火墻 firewall-cmd --reload# 瀏覽器訪問 http://192.168.43.119:8080/xxl-job-admin/賬號/密碼:admin/123456



至此“調度中心”項目已經部署成功。

三、搭建xxl-job 服務端(docker)
# 拉取鏡像 docker pull xuxueli/xxl-job-admin:2.3.0# 創建容器并運行(這是注意mysql也在docker容器中) # 第一種:docker中的xxl-job連接docker中的mysql docker run -e PARAMS="--spring.datasource.url=jdbc:mysql://172.17.0.2:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true --spring.datasource.password=root" -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin -d xuxueli/xxl-job-admin:2.3.0# 普通非docker中的mysql(密碼默認) # 第二種:docker中的xxl-job連接宿主機上的mysql docker run -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin -d xuxueli/xxl-job-admin:2.3.0# 普通非docker中的mysql(密碼非默認) # 第三種:docker中的xxl-job連接宿主機上的mysql docker run -e PARAMS="--spring.datasource.password=root" -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin -d xuxueli/xxl-job-admin:2.3.0注: 1.以上屬于2種場景(都是docker中應用和一個是docker應用一個不是) 2.第一種:不要添加&serverTimezone=Asia/Shanghai因為docker容器內部不識別,待定位具體原因 3.對于docker中的應用和docker中的應用之間要通信連接,需要連接docker內部的ip,而非宿主機的ip

賬號/密碼:
admin/123456

四、常見異常解決方案
4.1. docker中mysql容器的ip怎樣獲取?

docker 中用docker 啟動應用訪問docker中的mysql
https://gblfy.blog.csdn.net/article/details/113810453

4.2. xxl-job 連接數據庫失敗?

現象:

解決方案:
通過查看docker中啟動的xuxueli/xxl-job-admin:2.3.0容器的日志定位和分析問題‘

# 查看正在運行的xuxueli/xxl-job-admin:2.3.0容器的容器id [root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5863bea66ff4 xuxueli/xxl-job-admin:2.3.0 "sh -c 'java -jar $J…" 5 minutes ago Up 5 minutes 0.0.0.0:8080->8080/tcp xxl-job-admin 8172ef0f622c mysql "docker-entrypoint.s…" 39 minutes ago Up 9 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mymysql [root@localhost ~]# docker logs -f 5863bea66ff4

異常關鍵日志:

com.mysql.cj.exceptions.CJException: Unknown database 'xxl_job'從日志中可以看出,很明顯連接不上這個數據庫


通過客戶端連接mysql服務端查看xxl_job是否存在

由于mysql容器是咱們剛創建的因此xxl_job不存在
解決方案:
1.創建數據庫
2.初始化表結構



總結

以上是生活随笔為你收集整理的1分钟 搭建xxl-job任务调度中心的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。