xxl-job-入門使用

xxl-job-入門使用

工程結構

到 github 中 git clone xxl-job 工程:

在這裏插入圖片描述

其中:

  • xxl-job-admin: job 管理臺
  • xxl-job-core: 核心模塊
  • xxl-job-executor-samples: 一些示例

啓動 xxl-job-admin

applicaition.properties 中修改 數據庫地址,這裏爲本地:


### xxl-job, datasource
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=111111
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

直接啓動 啓動類,然後訪問 http://127.0.0.1:8080/xxl-job-admin/:

在這裏插入圖片描述

自定義job

xxl-job-executor-samples 中找到 xxl-job-executor-sample-springboot

在這裏插入圖片描述

新建 Job, 這裏採用 Bean 模式:


@Component
public class HelloJob {

    @XxlJob(value = "helloJob")
    public ReturnT<String> execute(String param) throws Exception {

        String now = LocalDateTime.now().format(
                      DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
        System.out.println(now + "XXL-JOB, Hello World. param: "+ param);
        return ReturnT.SUCCESS;
    }
}

application.properties 都不需要動,直接啓動

# web port
# 需要修改,如果多個實例
server.port=8082

# 需要修改,如果多個實例
xxl.job.executor.port=9998

然後查看job管理臺,這時還需要定義 job, 在 :

新建任務:
在這裏插入圖片描述

這裏雖然定義了 job, 但狀態還是 stop ,所以需要啓動

在這裏插入圖片描述
然後 job 狀態變成 running
在這裏插入圖片描述

查看控制檯:

2020-07-06 21:53:10XXL-JOB, Hello World. param: key: spring
2020-07-06 21:53:20XXL-JOB, Hello World. param: key: spring
2020-07-06 21:53:30XXL-JOB, Hello World. param: key: spring
2020-07-06 21:53:40XXL-JOB, Hello World. param: key: spring
...

it work!

多臺 job 實例

再啓動另一個實例

# web port
# 需要修改,如果多個實例
server.port=8081

# 需要修改,如果多個實例
xxl.job.executor.port=9999

查看 job 管理臺 註冊節點:

在這裏插入圖片描述

在這裏插入圖片描述

然後在剛剛註冊上去的機器執行任務:

在這裏插入圖片描述

可以在第二個實例中看到:

2020-07-06 22:08:14XXL-JOB, Hello World. param: 第二個機器
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章