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

Spring Boot整合 xxl-job

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

目錄

1. 介紹

2. SpringBoot整合xxl-job

2.1. 配置數(shù)據(jù)庫

2.2. 運行調(diào)動中心

2.3. 整合業(yè)務(wù)服務(wù)

2.3.1. 引入maven依賴

2.3.2.?創(chuàng)建業(yè)務(wù)服務(wù)配置類

2.3.3.?創(chuàng)建定時任務(wù)


1. 介紹

xxl-job是一個分布式定時器任務(wù)派遣服務(wù),這個項目主要有以下三部分組成 :?

  • xxl-job-admin: 調(diào)動中心,主要是提供任務(wù)管理平臺的頁面,需要把該模塊單獨打包作為一個服務(wù)部署,定時器再執(zhí)行時,是通過該服務(wù)去調(diào)用我們的業(yè)務(wù)服務(wù)完成任務(wù)執(zhí)行。
  • xxl-job-core:? 公共依賴模塊,在整合業(yè)務(wù)服務(wù)的時候,需要引入該依賴。
  • xxl-job-executor-samples:官方提供的demo。

springboot整合xxl-job,spring boot,java,mybatis

2. SpringBoot整合xxl-job

2.1. 配置數(shù)據(jù)庫

點擊<xxl_job_gitee> 訪問gitee獲取該項目,在 /doc/db/tables_xxl_job.sql的路徑中有SQL文件,需要將他導(dǎo)入到你自己的MySQL中。

springboot整合xxl-job,spring boot,java,mybatis

表介紹:?

springboot整合xxl-job,spring boot,java,mybatis

2.2. 運行調(diào)動中心

修改??xxl-job-admin 模塊 application.properties?的配置信息。

修改MySQL為你數(shù)據(jù)庫的真實信息?

springboot整合xxl-job,spring boot,java,mybatis

?修改郵箱服務(wù)配置(可選非必須)springboot整合xxl-job,spring boot,java,mybatis

以上配置都修改完成后,運行?xxl-job-admin?這個服務(wù),上面說過它是一個調(diào)度中心,主要是提供任務(wù)管理平臺的頁面。所以當(dāng)你的業(yè)務(wù)服務(wù)部署了,這個模塊也要作為一個服務(wù)單獨部署,這樣才可以管理你業(yè)務(wù)中定時任務(wù)。

2.3. 整合業(yè)務(wù)服務(wù)

接下來整合我們自己的業(yè)務(wù)服務(wù),xxl-job-executor-sample-springboot 這個模塊是官方提供的整合demo 模塊,可以參考它整合自己的業(yè)務(wù)。

springboot整合xxl-job,spring boot,java,mybatis

2.3.1. 引入maven依賴

     <!--    xxl-job依賴,maven倉庫有該依賴,不需要手動安裝   -->
        <dependency>
            <groupId>com.xuxueli</groupId>
            <artifactId>xxl-job-core</artifactId>
            <version>2.4.0</version>
        </dependency>

2.3.2.?創(chuàng)建業(yè)務(wù)服務(wù)配置類

注意:一定要確保你的 業(yè)務(wù)服務(wù) 和 xxl-job-admin 這個服務(wù)連接的是同一個數(shù)據(jù)庫

application.properties配置

### 調(diào)度中心的地址 ,就是 xxl-job-admin 這個服務(wù)的地址
xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin

### token (ke為空), 要和xxl-job-admin 中的accessToken統(tǒng)一
xxl.job.accessToken=default_token

### 執(zhí)行器名稱,可自定義
xxl.job.executor.appname=xxl-job-executor-sample
### 會將該地址注冊到調(diào)度中心,調(diào)度中心會用該地址調(diào)度任務(wù), 可為空默認(rèn)就是 ip:port , 端口不可以和業(yè)務(wù)端口重復(fù)
xxl.job.executor.address=
### 可為空,默認(rèn)獲取本機ip
xxl.job.executor.ip=
xxl.job.executor.port=9999
### 運行日志所保存的路徑
xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler
### 日志存放時間
xxl.job.executor.logretentiondays=30
創(chuàng)建:FrameLessXxlJobConfig 配置類

import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * xxl-job config
 *
 * @author yazb
 */
@Configuration
public class FrameLessXxlJobConfig {
    private Logger logger = LoggerFactory.getLogger(FrameLessXxlJobConfig.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();
     */


}

2.3.3.?創(chuàng)建定時任務(wù)

創(chuàng)建一個測試任務(wù)

2.3.3.1:bean模式任務(wù)


import com.xxl.job.core.handler.annotation.XxlJob;
import org.springframework.stereotype.Component;

/**
 * @author yazb
 * 測試
 */
@Component
public class TestTask {

    @XxlJob("hello")
    public void demoJobHandler() throws Exception {
        System.out.println("hello---->xxl-job");
        // default success
    }
}

訪問 xxl-job-admin 這個服務(wù),在頁面中運行定時任務(wù)。

用戶:admin

密碼:123456

springboot整合xxl-job,spring boot,java,mybatis

?創(chuàng)建定時任務(wù)springboot整合xxl-job,spring boot,java,mybatis

運行定時任務(wù)

springboot整合xxl-job,spring boot,java,mybatis

springboot整合xxl-job,spring boot,java,mybatis?

2.3.3.2:分片廣播任務(wù)模式

分片廣播模式,用來運行創(chuàng)建集群環(huán)境中的定時任務(wù),所以需要我們再創(chuàng)建一個服務(wù)測試。

分片廣播模式,會同時運行你集群中所有節(jié)點服務(wù)中定時任務(wù)。要想保證避免任務(wù)重復(fù)執(zhí)行??梢圆捎?單機路由策略(如:第一臺、一致性哈希)” + “阻塞策略(如:單機串行、丟棄后續(xù)調(diào)度)” 來規(guī)避,最終避免任務(wù)重復(fù)執(zhí)行。

已經(jīng)注冊到調(diào)度中心的服務(wù)?

springboot整合xxl-job,spring boot,java,mybatis

創(chuàng)建分布式廣播任務(wù)

springboot整合xxl-job,spring boot,java,mybatis

  /**
     * 2、分片廣播任務(wù)
     */
    @XxlJob("shardingJobHandler")
    public void shardingJobHandler() throws Exception {

        // 分片參數(shù)
        int shardIndex = XxlJobHelper.getShardIndex();
        int shardTotal = XxlJobHelper.getShardTotal();

        XxlJobHelper.log("分片參數(shù):當(dāng)前分片序號 = {}, 總分片數(shù) = {}", shardIndex, shardTotal);

        System.out.println("測試服務(wù) 9998-----》");

    }

springboot整合xxl-job,spring boot,java,mybatis文章來源地址http://www.zghlxwxcb.cn/news/detail-638407.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),不承擔(dān)相關(guān)法律責(zé)任。如若轉(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能完美克服這些缺點,也是當(dāng)前市面上使用相對較多的定時任務(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è)計目標(biāo)是開發(fā)迅速、學(xué)習(xí)簡單、輕量級、易擴展?,F(xiàn)已開放源代碼并接入多家公司線上產(chǎn)品線,開箱即用。 可以前往 Gitee 地址進行下載使用: ? 代碼結(jié)構(gòu)如下: 運行 SQL 文件至本地數(shù)據(jù)庫: 修改 xxl-job-admin 模塊的 yml 文件

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

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

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

    2024年02月08日
    瀏覽(22)
  • 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日
    瀏覽(28)
  • 重寫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任務(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日
    瀏覽(22)
  • 【xxl-job】分布式任務(wù)調(diào)度系統(tǒng)xxl-job搭建

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

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

    2024年02月16日
    瀏覽(24)
  • 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)
  • xxl-Job基礎(chǔ)配置

    xxl-Job基礎(chǔ)配置

    介紹: XXL-JOB是一個輕量級分布式任務(wù)調(diào)度平臺,其核心設(shè)計目標(biāo)是開發(fā)迅速、學(xué)習(xí)簡單、輕量級、易擴展。現(xiàn)已開放源代碼并接入多家公司線上產(chǎn)品線,開箱即用。 幾個特性: 1、簡單:支持通過Web頁面對任務(wù)進行CRUD操作,操作簡單,一分鐘上手; 2、動態(tài):支持動態(tài)修改

    2024年02月09日
    瀏覽(25)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包