xxljob默认登录_xxl-job安装部署整理
xxl-job github源碼地址:https://github.com/xuxueli/xxl-job
xxl-job 官方文檔:https://www.xuxueli.com/xxl-job/#
系統組成
調度模塊(調度中心):
負責管理調度信息,按照調度配置發出調度請求,自身不承擔業務代碼。調度系統與任務解耦,提高了系統可用性和穩定性,同時調度系統性能不再受限于任務模塊;
支持可視化、簡單且動態的管理調度信息,包括任務新建,更新,刪除,GLUE開發和任務報警等,所有上述操作都會實時生效,同時支持監控調度結果以及執行日志,支持執行器Failover。
執行模塊(執行器):
負責接收調度請求并執行任務邏輯。任務模塊專注于任務的執行等操作,開發和維護更加簡單和高效;
接收“調度中心”的執行請求、終止請求和日志請求等。
架構圖
xxl-job 環境搭建步驟:
1、初始化“調度數據庫” "調度數據庫初始化SQL腳本" 位置為:/xxl-job/doc/db/tables_xxl_job.sql
調度中心支持集群部署,集群情況下各節點務必連接同一個mysql實例,如果mysql做主從,調度中心集群節點務必強制走主庫。
2、編譯源碼按照maven格式將源碼導入IDE, 使用maven進行編譯即可(這里需要注意admin和core版本最好是要一致,不然會出現調度中心調不到job筆者親自躺坑)
源碼結構如下:
xxl-job-admin:調度中心
xxl-job-core:公共依賴
xxl-job-executor:執行器Sample示例(選擇合適的版本執行器,可直接使用,也可以參考其并將現有項
目改造成執行器)
xxl-job-executor-sample-spring:Spring版本,通過Spring容器管理執行器,比較通用,推薦這種
方式;
xxl-job-executor-sample-springboot:Springboot版本,通過Springboot管理執行器;
xxl-job-executor-sample-jfinal:JFinal版本,通過JFinal管理執行器;
xxl-job-executor-sample-nutz:Nutz版本,通過Nutz管理執行器
3、配置部署“調度中心”
調度中心項目:xxl-job-admin
作用:統一管理任務調度平臺上調度任務,負責觸發調度執行,并且提供任務管理平臺。
① 修改配置文件
老版本:/xxl-job/xxl-job-admin/src/main/resources/xxl-job-admin.properties
新版本:/xxl-job/xxl-job-admin/src/main/resources/application.properties
② 部署發布到服務器
調度中心訪問地址:http://localhost:8080/xxl-job-admin
(該地址執行器將會使用到,作為回調地址),
默認登錄賬號 “admin/123456”, 登錄后運行界面如下圖所示。
③ 調度中心集群(可選)
調度中心支持集群部署,提升調度系統容災和可用性。調度中心集群部署時,幾點要求和建議:
DB配置保持一致;登陸賬號配置保持一致;
集群機器時鐘保持一致(單機集群忽視);
建議:推薦通過nginx為調度中心集群做負載均衡,分配域名。調度中心訪問、執行器回調配置、調用
API服務等操作均通過該域名進行
4、配置部署“執行器項目”
“執行器”項目:xxl-job-executor-sample-spring (提供多種版本執行器供選擇,現以Spring版本為例,
可直接使用,也可以參考其并將現有項目改造成執行器)
作用:負責接收“調度中心”的調度并執行;可直接部署執行器,也可以將執行器集成到現有業務項目中。
步驟一:maven依賴
確認pom文件中引入了 “xxl-job-core” 的maven依賴;
步驟二:執行器配置
執行器配置,配置文件地址(這里配置參考官方文檔配置即可):
/xxl-job/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/resources/application.properties
步驟三:執行器組件配置
執行器組件,配置文件地址:
/xxl-job/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/java/com/xxl/job/executor/core/config/XxlJobConfig.java
(appname字段名稱可能不一樣,這里官方版本說明有提到)
@Bean
public XxlJobSpringExecutor xxlJobExecutor() {
logger.info(">>>>>>>>>>> xxl-job config init.");
XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
xxlJobSpringExecutor.setAppname(appname);
xxlJobSpringExecutor.setIp(ip);
xxlJobSpringExecutor.setPort(port);
xxlJobSpringExecutor.setAccessToken(accessToken);
xxlJobSpringExecutor.setLogPath(logPath);
xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);
return xxlJobSpringExecutor;
}
步驟四:部署執行器項目:
如果已經正確進行上述配置,可將執行器項目編譯打部署,系統提供多種執行器Sample示例項目,選擇其中一個即可,各自的部署方式如下。
xxl-job-executor-sample-springboot:項目編譯打包成springboot類型的可執行JAR包,命令啟動即可;
xxl-job-executor-sample-spring:項目編譯打包成WAR包,并部署到tomcat中。
xxl-job-executor-sample-jfinal:同上
xxl-job-executor-sample-nutz:同上
xxl-job-executor-sample-jboot:同上
至此“執行器”項目已經部署結束。
執行器支持集群部署,提升調度系統可用性,同時提升任務處理能力。
執行器集群部署時,幾點要求和建議:
執行器回調地址(xxl.job.admin.addresses)需要保持一致;執行器根據該配置進行執行器自動注冊等操作。
同一個執行器集群內AppName(xxl.job.executor.appname)需要保持一致;調度中心根據該配置動態發現不同集群的在線執行器列表
5、開發第一個任務”hello world”
前提:請確認“調度中心”和“執行器”項目已經成功部署并啟動;
步驟一:新建任務,登錄調度中心,點擊下圖所示“新建任務”按鈕,新建示例任務。然后,參考下面截圖中任務的參數配置,點擊保存。
步驟二:“GLUE模式(Java)” 任務開發:
請點擊任務右側 “GLUE” 按鈕,進入 “GLUE編輯器開發界面” ,見下圖。“GLUE模式(Java)” 運行模式的任務默認已經初始化了示例任務代碼,
即打印Hello World。 ( “GLUE模式(Java)” 運行模式的任務實際上是一段繼承自IJobHandler的Java類代碼,它在執行器項目中運行,可使用
@Resource/@Autowire注入執行器里中的其他服務。
步驟三:觸發執行:
請點擊任務右側 “執行” 按鈕,可手動觸發一次任務執行(通常情況下,通過配置Cron表達式進行任務調度觸發)。
步驟四:查看日志:
請點擊任務右側 “日志” 按鈕,可前往任務日志界面查看任務日志。
在任務日志界面中,可查看該任務的歷史調度記錄以及每一次調度的任務調度信息、執行參數和執行信息。運行中的任務點擊右側的“執行日志”按鈕,可進入日志控制臺查看實時執行日志
總結
以上是生活随笔為你收集整理的xxljob默认登录_xxl-job安装部署整理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 线程安全问题_java线程安全
- 下一篇: 某个元素的距离页面的左边距_如何提高办公