1. 程式人生 > 程式設計 >php專案接入xxl-job排程系統的示例詳解

php專案接入xxl-job排程系統的示例詳解

目錄
  • 1.部署xxl-job排程中心
  • 2. 整合xxl-job排程系統
    • 2.1 建立執行器專案
    • 2.2 新增執行器
    • 2.3 部署執行器專案
    • 2.4 新增GLUE模式任務
    • 2.5 編寫程式碼片段

1.部署xxl-job排程中心

此處略,請自行百度。下面重點介紹如何將php專案接入xxl-job排程。

2. 整合xxl-job排程系統

核心是使用xxl-job的GLUE執行模式,通過一段php程式碼片段,呼叫遠端的http資源。

2.1 建立執行器專案

參考執行器示例專案, xxl-job-executor-samples/xxl-jobuHSFSlYG-executor-sample-springboot,修改下其中的 application.properties 檔案,內容如下:

# 執行器專案使用的埠號
server.port=8585
# no web
#spring.main.web-environment=false
 
# log config
logging.config=classpath:logback.xml
 
### 調度中心地址
xxl.job.admin.addresses=http://127.0.0.1:8081/job-admin
 
### xxl-job,access token
xxl.job.accessToken=
 
### xxl-job executor appname
xxl.job.executor.appname=xxl-job-executor-base
### xxl-job executor registry-address: default use address to registry,otherwise use ip:port if address is null
xxl.job.executor.address=
### xxl-job executor server-info
xxl.job.executor.ip=127.0.0.1
xxl.job.executor.port=9999
### xxl-job executor log-path
xxl.job.executor.logpath=xxl-job-log
### xxl-job executor log-retention-days
xxl.job.executor.logretentiondays=30

2.2 新增執行器

在排程中心的管理介面,新增一個執行器,執行器的相關資訊必須與【2.1】步驟中的配置保持一致,如下:

php專案接入xxl-job排程系統的示例詳解

注意:此處的機器地址,在新版中必須帶上協議名稱,如:http。

2.3 部署執行器專案www.cppcns.com

將編譯好的 xxl-job-executor-sample-springboot-2.2.1-SNAPSHOT.jar 包,複製到php專案所在的機器上,並啟動。啟動命令為:

-jar -Dfile.encoding=utf-8 "xxl-job-executor-sample-springboot-2.2.1-SNAPSHOT.jar"

2.4 新增GLUE模式任務

php專案接入xxl-job排程系統的示例詳解

執行器選擇【2.2】步驟中新建的執行器即可,執行模式選擇【GLUE(PHP)】。

2.5 編寫php程式碼片段

在任務列表中,找到之前新建的GLUE任務,然後在對應的操作欄中,選擇【GLUE IDE】選單,進入xxl-job內建的web編輯器,即可編寫與業務相關的php程式碼。

php專案接入xxl-job排程系統的示例詳解

示例內容如下:

<?php
    $url = 'https://www.baidu.com/uHSFSlYG';
	$result = file_get_contents($url);
	var_dump($result);
	exit(0);
?>

php專案接入xxl-job排程系統的示例詳解

注意:

① 任務通過 Exit Code 判斷任務執行結果,0 成功,-1(非0狀態碼)失敗。

② 排程過程中,將會在 gluesource 目錄(位於日誌根目錄下)下,生成一個臨時的php檔案,檔案內容即為步驟【2.5】中編寫的程式碼片段。

到此這篇關於php專案接入xxl-job排程系統的文章就介紹到這了,更多相關php專案接入xxl-job內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!