最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java?Elastic-Job分布式定時任務(wù)使用方法介紹

 更新時間:2023年01月16日 10:11:18   作者:不死鳥.亞歷山大.狼崽子  
xxl-job?通過一個中心式的調(diào)度平臺,調(diào)度多個執(zhí)行器執(zhí)行任務(wù),調(diào)度中心通過?DB?鎖保證集群分布式調(diào)度的一致性,這樣擴展執(zhí)行器會增大?DB?的壓力,然而大部分公司的任務(wù)數(shù),執(zhí)行器并不多;xxl-job?提供了非常好用的監(jiān)控頁面甚至還有任務(wù)失敗的郵件告警功能

1 事件追蹤

Elastic-Job-Lite在配置中提供了JobEventConfiguration,支持?jǐn)?shù)據(jù)庫方式配置,會在數(shù)據(jù)庫中自動創(chuàng)建JOB_EXECUTION_LOG和JOB_STATUS_TRACE_LOG兩張表以及若干索引,來記錄作業(yè)的相關(guān)信息。

1.1 修改Elastic-Job配置類

在ElasticJobConfig中修改:

    @Autowired
    private DataSource dataSource;
    /**
     * 任務(wù)啟動
     *
     * @return
     */
    @Bean(initMethod = "init")
    public SpringJobScheduler initSimpleElasticJob() {
        SimpleJob job1 = fileBackupJobDb;
//        // 定義Lite作業(yè)根配置
        JobEventConfiguration jobEventConfig = new JobEventRdbConfiguration(dataSource);// 增加任務(wù)事件追蹤配置
        SpringJobScheduler jobScheduler = new SpringJobScheduler(job1,registryCenter,
                createJobConfiguration(job1.getClass(),"0/10 * * * * ?",4,"0=text,1=image,2=radio,3=vedio"),
                        jobEventConfig);
        return jobScheduler;
    }

1.2 啟動項目

啟動后會發(fā)現(xiàn)在elastic_job_demo數(shù)據(jù)庫中新增以下兩個表。

job_execution_log:

job_status_trace_log:

JOB_EXECUTION_LOG記錄每次作業(yè)的執(zhí)行歷史。分為兩個步驟:

1. 作業(yè)開始執(zhí)行時向數(shù)據(jù)庫插入數(shù)據(jù),除failure_cause和complete_time外的其他字段均不為空。

2. 作業(yè)完成執(zhí)行時向數(shù)據(jù)庫更新數(shù)據(jù),更新is_success, complete_time和failure_cause(如果作業(yè)執(zhí)行失敗)。

JOB_STATUS_TRACE_LOG記錄作業(yè)狀態(tài)變更痕跡表??赏ㄟ^每次作業(yè)運行的task_id查詢作業(yè)狀態(tài)變化的生命周期和運行軌跡。

2 運維

elastic-job中提供了一個elastic-job-lite-console控制臺

設(shè)計理念

  • 本控制臺和Elastic Job并無直接關(guān)系,是通過讀取Elastic Job的注冊中心數(shù)據(jù)展現(xiàn)作業(yè)狀態(tài),或更新注冊中心數(shù)據(jù)修改全局配置。
  • 控制臺只能控制作業(yè)本身是否運行,但不能控制作業(yè)進程的啟停,因為控制臺和作業(yè)本身服務(wù)器是完全分布式的,控制臺并不能控制作業(yè)服務(wù)器。

主要功能

  • 查看作業(yè)以及服務(wù)器狀態(tài)
  • 快捷的修改以及刪除作業(yè)設(shè)置
  • 啟用和禁用作業(yè)
  • 跨注冊中心查看作業(yè)
  • 查看作業(yè)運行軌跡和運行狀態(tài)

不支持項

1. 添加作業(yè)。因為作業(yè)都是在首次運行時自動添加,使用控制臺添加作業(yè)并無必要。直接在作業(yè)服務(wù)器啟動包含Elastic Job的作業(yè)進程即可

具體搭建步驟如下:

2.1 搭建

下載地址:傳送門

解壓縮 elastic-job-lite-console-${version}.tar.gz 。

進入 bin目錄 并執(zhí)行:

bin\start.sh

打開瀏覽器訪問 http://localhost:8899/ 即可訪問控制臺。8899為默認(rèn)端口號,可通過啟動腳本輸入-p自定義端口號。

elastic-job-lite-console-${version}.tar.gz 也可通過 elastic-job 源碼用 mvn install編譯獲取。

輸入用戶名 root 密碼 root 即可打開主界面如下圖

提供兩種賬戶,管理員及訪客,管理員擁有全部操作權(quán)限,訪客僅擁有察看權(quán)限。默認(rèn)管理員用戶名和密碼是root/root,訪客用戶名和密碼是guest/guest,可通過conf\auth.properties修改管理員及訪客用戶名及密碼。

2.2 配置及使用

1 配置注冊中心地址

先啟動zookeeper 然后在注冊中心配置界面點添加

點擊提交后,然后點連接(zookeeper必須處于啟動狀態(tài))

連接成功后,在作業(yè)維度下可以顯示該命名空間下作業(yè)名稱、分片數(shù)量及該作業(yè)的cron表達(dá)式等信息在服務(wù)器維度可以查看服務(wù)器ip、當(dāng)前運行的實例數(shù)、作業(yè)總數(shù)等信息。

2 配置事件追蹤數(shù)據(jù)源

在事件追蹤數(shù)據(jù)源配置頁面點添加按鈕,輸入相關(guān)信息

提交后點擊連接即可在作業(yè)歷史下查看作業(yè)歷史記錄

3 dump命令

使用Elastic-Job-Lite過程中可能會碰到一些問題,導(dǎo)致作業(yè)運行不穩(wěn)定。由于無法在生產(chǎn)環(huán)境調(diào)試,通過dump命令可以把作業(yè)內(nèi)部相關(guān)信息dump出來,方便開發(fā)者debug分析。

(1)開啟dump監(jiān)控端口,并運行程序

修改中ElasticJobConfifig中的createJobConfifiguration方法里JobRootConfifiguration的配置,開啟dump監(jiān)控端口:

JobRootConfiguration simpleJobRootConfig = LiteJobConfiguration.newBuilder(simpleJobConfig)
.monitorPort(9888)//設(shè)置dump端口
.build();

(2)windows中安裝netcat(若操作系統(tǒng)中已經(jīng)有nc命令,此步驟可略過)

tools文件夾內(nèi)包含netcat-win32-1.12.zip,解壓即可。

(3)執(zhí)行dump命令

打開命令行工具,進入netcat-win32-1.12.zip的解壓目錄,執(zhí)行以下命令:

echo dump| nc 127.0.0.1 9888 > job_debug_dump.txt

會在當(dāng)前目錄生成job_debug_dump.txt文件,打開job_debug_dump.txt后看到:

/com.example.demo.job.FileBackupJobDb/sharding | 
/com.example.demo.job.FileBackupJobDb/sharding/3 | 
/com.example.demo.job.FileBackupJobDb/sharding/3/instance | ip18@-@19084
/com.example.demo.job.FileBackupJobDb/sharding/2 | 
/com.example.demo.job.FileBackupJobDb/sharding/2/instance | ip18@-@19084
/com.example.demo.job.FileBackupJobDb/sharding/1 | 
/com.example.demo.job.FileBackupJobDb/sharding/1/instance | ip18@-@19084
/com.example.demo.job.FileBackupJobDb/sharding/0 | 
/com.example.demo.job.FileBackupJobDb/sharding/0/instance | ip18@-@19084
/com.example.demo.job.FileBackupJobDb/servers | 
/com.example.demo.job.FileBackupJobDb/servers/ip18 | 
/com.example.demo.job.FileBackupJobDb/servers/ip2 | 
/com.example.demo.job.FileBackupJobDb/leader | 
/com.example.demo.job.FileBackupJobDb/leader/sharding | 
/com.example.demo.job.FileBackupJobDb/leader/election | 
/com.example.demo.job.FileBackupJobDb/leader/election/latch | 
/com.example.demo.job.FileBackupJobDb/leader/election/instance | ip18@-@19084
/com.example.demo.job.FileBackupJobDb/instances | 
/com.example.demo.job.FileBackupJobDb/instances/ip18@-@19084 | 
/com.example.demo.job.FileBackupJobDb/config | {"jobName":"com.example.demo.job.FileBackupJobDb","jobClass":"com.example.demo.job.FileBackupJobDb","jobType":"SIMPLE","cron":"0/10 * * * * ?","shardingTotalCount":4,"shardingItemParameters":"0\u003dtext,1\u003dimage,2\u003dradio,3\u003dvedio","jobParameter":"","failover":false,"misfire":true,"description":"","jobProperties":{"job_exception_handler":"com.dangdang.ddframe.job.executor.handler.impl.DefaultJobExceptionHandler","executor_service_handler":"com.dangdang.ddframe.job.executor.handler.impl.DefaultExecutorServiceHandler"},"monitorExecution":true,"maxTimeDiffSeconds":-1,"monitorPort":9888,"jobShardingStrategyClass":"","reconcileIntervalMinutes":10,"disabled":false,"overwrite":true}

里面展示的其實就是FileBackupJob任務(wù)在Zookeeper中的信息。

到此這篇關(guān)于Java Elastic-Job分布式定時任務(wù)使用方法介紹的文章就介紹到這了,更多相關(guān)Java Elastic-Job內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Kotlin 的注解類詳解及實例

    Kotlin 的注解類詳解及實例

    這篇文章主要介紹了Kotlin 的注解類詳解及實例的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • 使用AOP+反射實現(xiàn)自定義Mybatis多表關(guān)聯(lián)查詢

    使用AOP+反射實現(xiàn)自定義Mybatis多表關(guān)聯(lián)查詢

    這篇文章主要介紹了使用AOP+反射實現(xiàn)自定義Mybatis多表關(guān)聯(lián),目前的需求是增強現(xiàn)有的查詢,使用簡單的注解即可實現(xiàn)多表關(guān)聯(lián),本文通過實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • java的Builder原理和實現(xiàn)詳解

    java的Builder原理和實現(xiàn)詳解

    大家好,本篇文章主要講的是java的Builder原理和實現(xiàn)詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • MyBatis中正則使用foreach拼接字符串

    MyBatis中正則使用foreach拼接字符串

    這篇文章主要介紹了MyBatis中正則使用foreach拼接字符串,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • 如何利用MyBatisX插件自動生成代碼

    如何利用MyBatisX插件自動生成代碼

    這篇文章主要介紹了如何利用MyBatisX插件自動生成代碼,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Java使用Jsoup解析html網(wǎng)頁的實現(xiàn)步驟

    Java使用Jsoup解析html網(wǎng)頁的實現(xiàn)步驟

    Jsoup是一個用于解析HTML文檔的Java庫,本文主要介紹了Java使用Jsoup解析html網(wǎng)頁的實現(xiàn)步驟,可以提取文本、鏈接、圖片等,具有一定的參考價值,感興趣的可以了解一下
    2024-02-02
  • java分布式流處理組件Producer入門詳解

    java分布式流處理組件Producer入門詳解

    這篇文章主要為大家介紹了java分布式流處理組件Producer入門詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • springmvc Controller方法沒有加@ResponseBody導(dǎo)致api訪問404問題

    springmvc Controller方法沒有加@ResponseBody導(dǎo)致api訪問404問題

    這篇文章主要介紹了springmvc Controller方法沒有加@ResponseBody導(dǎo)致api訪問404問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Spring Boot結(jié)成MyBatis-Plus最全配置指南

    Spring Boot結(jié)成MyBatis-Plus最全配置指南

    本文主要介紹了Spring Boot結(jié)成MyBatis-Plus最全配置指南,包括依賴引入、配置數(shù)據(jù)源、Mapper 掃描、基本CRUD操作等,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03
  • SpringBoot中使用MyBatis詳細(xì)指南

    SpringBoot中使用MyBatis詳細(xì)指南

    MyBatis 是一款優(yōu)秀的持久層框架,它支持定制化 SQL、存儲過程以及高級映射,將 Spring Boot 和 MyBatis 集成,能夠充分發(fā)揮 Spring Boot 的快速開發(fā)特性和 MyBatis 靈活的數(shù)據(jù)庫操作能力,本文給大家介紹了SpringBoot使用MyBatis詳細(xì)指南,需要的朋友可以參考下
    2025-01-01

最新評論

图片| 辽宁省| 肃宁县| 玉田县| 富宁县| 札达县| 青铜峡市| 化德县| 克什克腾旗| 巴里| 青神县| 芦山县| 永宁县| 芜湖市| 大兴区| 丹寨县| 托克逊县| 内乡县| 通州区| 新竹县| 安陆市| 清徐县| 宁德市| 永泰县| 益阳市| 潢川县| 安丘市| 湘潭县| 德钦县| 周口市| 社会| 清水河县| 台州市| 望奎县| 成安县| 长沙县| 安远县| 长岛县| 隆安县| 柳林县| 贺州市|