国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Spring Boot 整合 xxl-job

這篇具有很好參考價值的文章主要介紹了Spring Boot 整合 xxl-job。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

官方文檔:https://www.xuxueli.com/xxl-job/

XXL-JOB 是一個分布式任務(wù)調(diào)度平臺,其核心設(shè)計目標是開發(fā)迅速、學(xué)習(xí)簡單、輕量級、易擴展。現(xiàn)已開放源代碼并接入多家公司線上產(chǎn)品線,開箱即用。

說明:官方文檔很重要,而且非常詳細,要慢慢適應(yīng)看官方文檔進行學(xué)習(xí)!

PS:下面搭建和整合流程是基于項目需求進行整理的,和普通學(xué)習(xí)流程一致,就是有一些命名沒那么測試化,自行體會。

xxl-job 環(huán)境搭建

1. 下載

下載地址:https://github.com/xuxueli/xxl-job/releases

建議:直接下載最新版,如目前我下的是 2.4.0,之前的 2.3.0 用的有問題。

說明:下載解壓后,使用 IDEA 打開。

2. 數(shù)據(jù)庫表導(dǎo)入

SQL 位置:doc/db/tables_xxl_job.sql

說明:導(dǎo)入到自己的數(shù)據(jù)庫中。

3. 修改配置數(shù)據(jù)

說明:以下兩個配置必須修改,否則啟動報錯!

3.1 修改 application.properties

配置文件位置:xxl-job-admin 下的 src/main/resources/application.properties

server.port=7397 #【自選】,修改后,后面自己執(zhí)行器項目配置中需要對應(yīng)換改的這個端口

# 數(shù)據(jù)源配置信息,對應(yīng)改成自己的。
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=luis
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

# 【重要!說明:此 accessToken xxl-job 配置了默認的,你自己的執(zhí)行器項目中 accessToken 必須保持一致】
xxl.job.accessToken=default_token
3.2 修改 logback.xml

日志配置文件位置:xxl-job-admin 下的 src/main/resources/logback.xml

<!-- 日志文件保存位置改成自己的,可按如下示例放到項目根目錄下 -->
<property name="log.path" value="D:/1a-Projects/lw-projects/tool-projects/xxl-job-2.3.0/data/applogs/xxl-job/xxl-job-admin.log"/>

4. 運行訪問

運行 xxl-job-admin 下的主啟動類啟動項目,瀏覽器輸入地址訪問:http://localhost:7397/xxl-job-admin/toLogin

PS:若是免登陸的,則忽略下面賬號密碼。

默認登陸賬號:admin

默認登陸密碼:123456

5. 其他

這里簡單說明下,xxl-job-executor-samples 下有兩個示例執(zhí)行器模板項目,有多種任務(wù)使用方式,后續(xù)可自行參考模板項目以及官方文檔,進行學(xué)習(xí)使用,下面直接介紹 Spring Boot 中簡單使用 XXL-JOB。

Spring Boot 整合 XXL-JOB

新建 Spring Boot 項目,準備進行整合。

1. 添加 pom

<!-- xxl-job-core(建議根據(jù)下載的 xxl-job 自行適配版本)-->
<dependency>
    <groupId>com.xuxueli</groupId>
    <artifactId>xxl-job-core</artifactId>
    <version>2.4.0</version>
</dependency>

2. 添加配置信息

幾個核心配置:調(diào)度中心地址、執(zhí)行器名稱、執(zhí)行器端口、執(zhí)行器日志路徑、執(zhí)行器通訊 token

# xxl-job
# 官網(wǎng):https://github.com/xuxueli/xxl-job/
# 地址:http://localhost:7397/xxl-job-admin 【需要先啟動 xxl-job】
# 賬號:admin
# 密碼:123456
xxl:
  job:
    admin:
      ### 調(diào)度中心部署根地址 [選填]:如調(diào)度中心集群部署存在多個地址則用逗號分隔。執(zhí)行器將會使用該地址進行"執(zhí)行器心跳注冊"和"任務(wù)結(jié)果回調(diào)";為空則關(guān)閉自動注冊;
      addresses: http://127.0.0.1:7397/xxl-job-admin
    executor:
      ### 執(zhí)行器注冊 [選填]:優(yōu)先使用該配置作為注冊地址,為空時使用內(nèi)嵌服務(wù) ”IP:PORT“ 作為注冊地址。從而更靈活的支持容器類型執(zhí)行器動態(tài)IP和動態(tài)映射端口問題。
      address:
      ### 執(zhí)行器AppName [選填]:執(zhí)行器心跳注冊分組依據(jù);為空則關(guān)閉自動注冊
      appname: lottery-job
      ### 執(zhí)行器IP [選填]:默認為空表示自動獲取IP,多網(wǎng)卡時可手動設(shè)置指定IP,該IP不會綁定Host僅作為通訊實用;地址信息用于 "執(zhí)行器注冊" 和 "調(diào)度中心請求并觸發(fā)任務(wù)";
      ip:
      ### 執(zhí)行器端口號 [選填]:小于等于0則自動獲取;默認端口為9999,單機部署多個執(zhí)行器時,注意要配置不同執(zhí)行器端口;
      port: 9998
      ### 執(zhí)行器運行日志文件存儲磁盤路徑 [選填] :需要對該路徑擁有讀寫權(quán)限;為空則使用默認路徑;
      logpath: D:/1a-Projects/lw-projects/tool-projects/xxl-job-2.3.0/data/applogs/xxl-job/jobhandler
      ### 執(zhí)行器日志文件保存天數(shù) [選填] : 過期日志自動清理, 限制值大于等于3時生效; 否則, 如-1, 關(guān)閉自動清理功能;
      logretentiondays: 50
    ### 執(zhí)行器通訊TOKEN [選填]:非空時啟用;
    accessToken: default_token

3. 添加配置類

@Configuration
public class LotteryXxlJobConfig {

    private Logger logger = LoggerFactory.getLogger(LotteryXxlJobConfig.class);

    @Value("${xxl.job.admin.addresses}")
    private String adminAddresses;

    @Value("${xxl.job.accessToken}")
    private String accessToken;

    @Value("${xxl.job.executor.appname}")
    private String appname;

    @Value("${xxl.job.executor.address}")
    private String address;

    @Value("${xxl.job.executor.ip}")
    private String ip;

    @Value("${xxl.job.executor.port}")
    private int port;

    @Value("${xxl.job.executor.logpath}")
    private String logPath;

    @Value("${xxl.job.executor.logretentiondays}")
    private int logRetentionDays;

    @Bean
    public XxlJobSpringExecutor xxlJobExecutor() {
        logger.info(">>>>>>>>>>> xxl-job config init.");

        XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
        xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
        xxlJobSpringExecutor.setAppname(appname);
        xxlJobSpringExecutor.setAddress(address);
        xxlJobSpringExecutor.setIp(ip);
        xxlJobSpringExecutor.setPort(port);
        xxlJobSpringExecutor.setAccessToken(accessToken);
        xxlJobSpringExecutor.setLogPath(logPath);
        xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);

        return xxlJobSpringExecutor;
    }

    /**********************************************************************************************
     * 針對多網(wǎng)卡、容器內(nèi)部署等情況,可借助 "spring-cloud-commons" 提供的 "InetUtils" 組件靈活定制注冊IP;
     *
     *      1、引入依賴:
     *          <dependency>
     *             <groupId>org.springframework.cloud</groupId>
     *             <artifactId>spring-cloud-commons</artifactId>
     *             <version>${version}</version>
     *         </dependency>
     *
     *      2、配置文件,或者容器啟動變量
     *          spring.cloud.inetutils.preferred-networks: 'xxx.xxx.xxx.'
     *
     *      3、獲取IP
     *          String ip_ = inetUtils.findFirstNonLoopbackHostInfo().getIpAddress();
     **********************************************************************************************/
    
}

4. 添加任務(wù)類

@Component
public class LotteryXxlJob {

    private Logger logger = LoggerFactory.getLogger(LotteryXxlJob.class);
	
    // 簡單任務(wù)
    @XxlJob("lotteryActivityStateJobHandler")
    public void lotteryActivityStateJobHandler() throws Exception {

        logger.info("我是被 xxl-job 自動調(diào)用執(zhí)行的任務(wù)!");

    }

}

5. 啟動項目

PS:必須保證 xxl-job 項目先正常啟動,并且任務(wù)調(diào)度中心可訪問。此項目必須后啟動!

6. 任務(wù)調(diào)度中心配置任務(wù)

說明:必須先創(chuàng)建執(zhí)行器,再創(chuàng)建任務(wù)!

6.1 新增執(zhí)行器

訪問任務(wù)調(diào)度中心:http://localhost:7397/xxl-job-admin/

進入執(zhí)行器管理,新增執(zhí)行器,填寫信息:

  • AppName :填自己 Spring Boot 項目中配置的 appname,如上面項目的 lottery-job
  • 名稱:隨便寫,即執(zhí)行器名
  • 注冊方式:選自動注入

然后保存即可!

6.2 新增任務(wù)

進入任務(wù)管理,新增任務(wù),填寫信息:

  • 執(zhí)行器:選擇上步中填寫的執(zhí)行器名稱
  • 任務(wù)描述:自行描述
  • 負責人:xxx
  • 調(diào)度類型:CRON
  • CRON 表達式:自行定制,如 0/1 * * * * ?,表示每秒執(zhí)行一次
  • 運行模式:BEAN
  • JobHandler:填上面 Spring Boot 項目任務(wù)類方法上 @XxlJob 注解中的名稱,如:lotteryActivityStateJobHandler

然后保存即可?。ㄆ渲杏行┡渲每勺孕性O(shè)置)

7. 任務(wù)操作

在任務(wù)管理下,可對新增的任務(wù)進行操作,如啟動、執(zhí)行一次等

點擊啟動或執(zhí)行一次后,可觀察 Spring Boot 項目后臺任務(wù)的日志打印情況,測試驗證。

以上,整合完成。文章來源地址http://www.zghlxwxcb.cn/news/detail-411834.html

到了這里,關(guān)于Spring Boot 整合 xxl-job的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 定時任務(wù)特輯 | Quartz、xxl-job、elastic-job、Cron四個定時任務(wù)框架對比,和Spring Boot集成實戰(zhàn)

    定時任務(wù)特輯 | Quartz、xxl-job、elastic-job、Cron四個定時任務(wù)框架對比,和Spring Boot集成實戰(zhàn)

    專欄集錦,大佬們可以收藏以備不時之需: Spring Cloud 專欄: Python 專欄: Redis 專欄: TensorFlow 專欄: Logback 專欄: 量子計算: 量子計算 | 解密著名量子算法Shor算法和Grover算法 AI機器學(xué)習(xí)實戰(zhàn): AI機器學(xué)習(xí)實戰(zhàn) | 使用 Python 和 scikit-learn 庫進行情感分析 AI機器學(xué)習(xí) | 基于lib

    2024年02月05日
    瀏覽(41)
  • springboot整合xxl-job項目使用(含完整代碼)

    springboot整合xxl-job項目使用(含完整代碼)

    前言:在之前的文章中,我寫過springboot集成quartz框架在實際項目中的應(yīng)用。但是由于quartz框架的一些缺點,而xxl-job能完美克服這些缺點,也是當前市面上使用相對較多的定時任務(wù)框架。xxl-job提供了調(diào)度中心控制臺頁面,對所有的定時任務(wù)進行統(tǒng)一配置管理。在我之前的文章

    2024年02月11日
    瀏覽(23)
  • XXL-JOB分布式任務(wù)調(diào)度平臺搭建以及和SpringBoot整合應(yīng)用

    XXL-JOB分布式任務(wù)調(diào)度平臺搭建以及和SpringBoot整合應(yīng)用

    XXL-JOB?是一個輕量級分布式任務(wù)調(diào)度平臺,其核心設(shè)計目標是開發(fā)迅速、學(xué)習(xí)簡單、輕量級、易擴展?,F(xiàn)已開放源代碼并接入多家公司線上產(chǎn)品線,開箱即用。 可以前往 Gitee 地址進行下載使用: ? 代碼結(jié)構(gòu)如下: 運行 SQL 文件至本地數(shù)據(jù)庫: 修改 xxl-job-admin 模塊的 yml 文件

    2023年04月21日
    瀏覽(20)
  • 微服務(wù): xxl-job的安裝(docker),使用及springboot整合[完整版詳解]

    微服務(wù): xxl-job的安裝(docker),使用及springboot整合[完整版詳解]

    XXL-JOB是一個分布式任務(wù)調(diào)度平臺,其核心設(shè)計目標是開發(fā)迅速、學(xué)習(xí)簡單、輕量級、易擴展。現(xiàn)已開放源代碼并接入多家公司線上產(chǎn)品線,開箱即用。 1.1.1 xxl-job作用 統(tǒng)一管理定時調(diào)度任務(wù) 相比于 springboot的@Scheduled , 這個表達式可以隨意修改 也可以面對更加復(fù)雜的定時調(diào)度

    2024年02月08日
    瀏覽(21)
  • Spring@Scheduled定時任務(wù)接入XXL-JOB的一種方案(基于SC Gateway)

    Spring@Scheduled定時任務(wù)接入XXL-JOB的一種方案(基于SC Gateway)

    目前在職的公司,維護著Spring Cloud分布式微服務(wù)項目有25+個。其中有10個左右微服務(wù)都寫有定時任務(wù)邏輯,采用Spring @Scheduled這種方式。 Spring @Scheduled定時任務(wù)的缺點: 不支持集群:為避免重復(fù)執(zhí)行,需引入分布式鎖 死板不靈活:不支持手動執(zhí)行,單次執(zhí)行,補償執(zhí)行,修改

    2024年02月11日
    瀏覽(27)
  • 【 XXL-JOB】 XXL-JOB任務(wù)分片

    【 XXL-JOB】 XXL-JOB任務(wù)分片

    xxl-job 是一個分布式任務(wù)調(diào)度平臺,支持定時任務(wù)和分片任務(wù)。其中,分片任務(wù)可以將一個大任務(wù)拆分成多個小任務(wù),分布式地執(zhí)行,提高任務(wù)的執(zhí)行效率和可靠性。分片任務(wù)中,有一種特殊的任務(wù)類型叫做分片廣播任務(wù),可以將一個任務(wù)廣播到所有的執(zhí)行器節(jié)點上執(zhí)行,本

    2024年02月09日
    瀏覽(21)
  • 【xxl-job】分布式任務(wù)調(diào)度系統(tǒng)xxl-job搭建

    【xxl-job】分布式任務(wù)調(diào)度系統(tǒng)xxl-job搭建

    XXL-JOB是一個輕量級分布式任務(wù)調(diào)度平臺,其核心設(shè)計目標是開發(fā)迅速、學(xué)習(xí)簡單、輕量級、易擴展、開箱即用。 更多介紹,請訪問官網(wǎng):分布式任務(wù)調(diào)度平臺XXL-JOB 前提條件:任務(wù)調(diào)度中心(xxl-job admin)依賴于 mysql,所以必須要安裝mysql才行!安裝mysql有2種方式:docker部署或

    2024年02月16日
    瀏覽(23)
  • Xxl-job安裝部署以及SpringBoot集成Xxl-job使用

    Xxl-job安裝部署以及SpringBoot集成Xxl-job使用

    1、安裝Xxl-job: 可以使用docker拉取鏡像部署和源碼編譯兩種方式,這里選擇源碼編譯安裝。 代碼拉取地址: 官方開發(fā)文檔: 2、打開項目 使用Maven打開項目,下載相關(guān)的jar包依賴。配置相關(guān)配置文件 這里可以參考官方開發(fā)文檔進行配置。 3、初始化數(shù)據(jù)庫 項目中包含數(shù)據(jù)庫

    2023年04月25日
    瀏覽(21)
  • 重寫RuoYi-Cloud所有功能 整合 SpringCloudAlibaba Dubbo Mybatis-Plus MQ OSS ES Xxl-Job Docker 全方位升級 定期同步

    轉(zhuǎn)載于:https://blog.csdn.net/weixin_40461281/article/details/122837923 RuoYi-Cloud-Plus? 微服務(wù)通用權(quán)限管理系統(tǒng) ?重寫 RuoYi-Cloud 全方位升級(不兼容原框架) 系統(tǒng)演示:?傳送門?分布式集群版本(功能一致) 功能介紹 使用技術(shù) 文檔地址 特性注意事項 微服務(wù)權(quán)限管理系統(tǒng) RuoYi-Cloud-Plus RuoYi-Clo

    2024年02月08日
    瀏覽(23)
  • XXL-JOB詳細說明

    XXL-JOB詳細說明

    單機:Timer、ExectorService、spring@scheduled 分布式:xxl-job、quartz、elastic-job 由調(diào)度中心和執(zhí)行器組成,調(diào)度中心提供一個web管理配置任務(wù)和執(zhí)行器,調(diào)度中心通過rpc觸發(fā)執(zhí)行器 1、簡單:支持通過Web頁面對任務(wù)進行CRUD操作,操作簡單,一分鐘上手; 2、動態(tài):支持動態(tài)修改任務(wù)狀

    2024年02月10日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包