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

分布式定時(shí)任務(wù)系列8:XXL-job源碼分析之遠(yuǎn)程調(diào)用

這篇具有很好參考價(jià)值的文章主要介紹了分布式定時(shí)任務(wù)系列8:XXL-job源碼分析之遠(yuǎn)程調(diào)用。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

?傳送門

分布式定時(shí)任務(wù)系列1:XXL-job安裝

分布式定時(shí)任務(wù)系列2:XXL-job使用

分布式定時(shí)任務(wù)系列3:任務(wù)執(zhí)行引擎設(shè)計(jì)

分布式定時(shí)任務(wù)系列4:任務(wù)執(zhí)行引擎設(shè)計(jì)續(xù)

分布式定時(shí)任務(wù)系列5:XXL-job中blockingQueue的應(yīng)用

分布式定時(shí)任務(wù)系列6:XXL-job觸發(fā)日志過大引發(fā)的CPU告警

分布式定時(shí)任務(wù)系列7:XXL-job源碼分析之任務(wù)觸發(fā)

?Java并發(fā)編程實(shí)戰(zhàn)1:java中的阻塞隊(duì)列

通訊模塊剖析

一次完整的任務(wù)調(diào)度通訊流程
  1. - 1、“調(diào)度中心”向“執(zhí)行器”發(fā)送http調(diào)度請求: “執(zhí)行器”中接收請求的服務(wù),實(shí)際上是一臺(tái)內(nèi)嵌Server,默認(rèn)端口9999;
  2. - 2、“執(zhí)行器”執(zhí)行任務(wù)邏輯;
  3. - 3、“執(zhí)行器”http回調(diào)“調(diào)度中心”調(diào)度結(jié)果: “調(diào)度中心”中接收回調(diào)的服務(wù),是針對執(zhí)行器開放一套API服務(wù);

上面的3個(gè)步驟流程是XXL-job官網(wǎng)給出的任務(wù)調(diào)度的通訊流程。如果看過前面分布式定時(shí)任務(wù)系列5:XXL-job中blockingQueue的應(yīng)用,分布式定時(shí)任務(wù)系列7:XXL-job源碼分析之任務(wù)觸發(fā)這2節(jié),應(yīng)該大致了解了XXL-job任務(wù)的觸發(fā)與執(zhí)行。不過既然XXL-job號(hào)稱是分布式調(diào)度,無可避免的會(huì)涉及到遠(yuǎn)程調(diào)用。但在分析源碼之前,還是再來看看對應(yīng)的架構(gòu)設(shè)計(jì)

架構(gòu)設(shè)計(jì)

設(shè)計(jì)思想

將調(diào)度行為抽象形成“調(diào)度中心”公共平臺(tái),而平臺(tái)自身并不承擔(dān)業(yè)務(wù)邏輯,“調(diào)度中心”負(fù)責(zé)發(fā)起調(diào)度請求。

將任務(wù)抽象成分散的JobHandler,交由“執(zhí)行器”統(tǒng)一管理,“執(zhí)行器”負(fù)責(zé)接收調(diào)度請求并執(zhí)行對應(yīng)的JobHandler中業(yè)務(wù)邏輯。

因此,“調(diào)度”和“任務(wù)”兩部分可以相互解耦,提高系統(tǒng)整體穩(wěn)定性和擴(kuò)展性;

從上面的描述中,可以抽象出下面設(shè)計(jì)模型:

分布式定時(shí)任務(wù)系列8:XXL-job源碼分析之遠(yuǎn)程調(diào)用,# 分布式調(diào)度,xxl-job

系統(tǒng)組成

調(diào)度中心

  • 調(diào)度模塊(調(diào)度中心)
    負(fù)責(zé)管理調(diào)度信息,按照調(diào)度配置發(fā)出調(diào)度請求,自身不承擔(dān)業(yè)務(wù)代碼。調(diào)度系統(tǒng)與任務(wù)解耦,提高了系統(tǒng)可用性和穩(wěn)定性,同時(shí)調(diào)度系統(tǒng)性能不再受限于任務(wù)模塊;
    支持可視化、簡單且動(dòng)態(tài)的管理調(diào)度信息,包括任務(wù)新建,更新,刪除,GLUE開發(fā)和任務(wù)報(bào)警等,所有上述操作都會(huì)實(shí)時(shí)生效,同時(shí)支持監(jiān)控調(diào)度結(jié)果以及執(zhí)行日志,支持執(zhí)行器Failover。

執(zhí)行器

  • 執(zhí)行模塊(執(zhí)行器)
    負(fù)責(zé)接收調(diào)度請求并執(zhí)行任務(wù)邏輯。任務(wù)模塊專注于任務(wù)的執(zhí)行等操作,開發(fā)和維護(hù)更加簡單和高效;
    接收“調(diào)度中心”的執(zhí)行請求、終止請求和日志請求等。

源碼目錄

結(jié)合前一節(jié)的代碼模塊來理解,可以得出下面的結(jié)論:

分布式定時(shí)任務(wù)系列8:XXL-job源碼分析之遠(yuǎn)程調(diào)用,# 分布式調(diào)度,xxl-job

  • xxl-job-admin,就是調(diào)度中心源碼,也就是前面第7節(jié)的分析任務(wù)觸發(fā)的模塊
  • xxl-job-core,就是執(zhí)行器源碼,也是就是前面第5節(jié)的分析任務(wù)執(zhí)行的模塊(不過并不全面,只是里面的異步相關(guān)部分)
  • xxl-job-executor-samples,就是業(yè)務(wù)代碼,跟前面幾節(jié)里面的auth模塊的一樣,跟實(shí)際代碼相關(guān)?

而這節(jié)的重點(diǎn)就是那個(gè)綠色箭頭:調(diào)度執(zhí)行,遠(yuǎn)程調(diào)用??!?

自研RPC

從上面的架構(gòu)圖中,可以看到XXL-job框架對任務(wù)觸發(fā)過程中涉及的遠(yuǎn)程調(diào)用稱之為xxl-rpc模塊。畫一張部署圖(一種可能的部署方式,不保熟),從部署的角度來探討一下:

分布式定時(shí)任務(wù)系列8:XXL-job源碼分析之遠(yuǎn)程調(diào)用,# 分布式調(diào)度,xxl-job文章來源地址http://www.zghlxwxcb.cn/news/detail-810962.html

到了這里,關(guān)于分布式定時(shí)任務(wù)系列8:XXL-job源碼分析之遠(yuǎn)程調(diào)用的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • Spring Boot 3 整合 xxl-job 實(shí)現(xiàn)分布式定時(shí)任務(wù)調(diào)度,結(jié)合 Docker 容器化部署(圖文指南)

    Spring Boot 3 整合 xxl-job 實(shí)現(xiàn)分布式定時(shí)任務(wù)調(diào)度,結(jié)合 Docker 容器化部署(圖文指南)

    xxl-job 是一個(gè)分布式任務(wù)調(diào)度平臺(tái),它提供了強(qiáng)大的任務(wù)調(diào)度和執(zhí)行能力,可以幫助我們實(shí)現(xiàn)任務(wù)的自動(dòng)化調(diào)度和執(zhí)行。本文將介紹如何在 Docker 環(huán)境下部署 xxl-job,并將其與 Spring Boot 進(jìn)行整合。 數(shù)據(jù)庫腳本:tables_xxl_job-2.4.0.sql Docker 鏡像地址: https://hub.docker.com/r/xuxueli/xxl-jo

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

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

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

    2024年02月16日
    瀏覽(24)
  • xxl-Job分布式任務(wù)調(diào)度

    xxl-Job分布式任務(wù)調(diào)度

    我們可以先思考一下業(yè)務(wù)場景的解決方案: 某電商系統(tǒng)需要在每天上午10點(diǎn),下午3點(diǎn),晚上8點(diǎn)發(fā)放一批優(yōu)惠券。 某銀行系統(tǒng)需要在信用卡到期還款日的前三天進(jìn)行短信提醒。 某財(cái)務(wù)系統(tǒng)需要在每天凌晨0:10結(jié)算前一天的財(cái)務(wù)數(shù)據(jù),統(tǒng)計(jì)匯總。 12306會(huì)根據(jù)車次的不同,設(shè)置某

    2024年02月15日
    瀏覽(28)
  • xxl-Job分布式任務(wù)調(diào)度 入門

    xxl-Job分布式任務(wù)調(diào)度 入門

    我們可以先思考一下業(yè)務(wù)場景的解決方案: 某電商系統(tǒng)需要在每天上午10點(diǎn),下午3點(diǎn),晚上8點(diǎn)發(fā)放一批優(yōu)惠券。 某銀行系統(tǒng)需要在信用卡到期還款日的前三天進(jìn)行短信提醒。 某財(cái)務(wù)系統(tǒng)需要在每天凌晨0:10結(jié)算前一天的財(cái)務(wù)數(shù)據(jù),統(tǒng)計(jì)匯總。 12306會(huì)根據(jù)車次的不同,設(shè)置某

    2024年02月03日
    瀏覽(22)
  • Java -- XXL-JOB分布式任務(wù)調(diào)度平臺(tái)

    Java -- XXL-JOB分布式任務(wù)調(diào)度平臺(tái)

    XXL-JOB是一個(gè)分布式任務(wù)調(diào)度平臺(tái),其核心設(shè)計(jì)目標(biāo)是開發(fā)迅速、學(xué)習(xí)簡單、輕量級(jí)、易擴(kuò)展?,F(xiàn)已開放源代碼并接入多家公司線上產(chǎn)品線,開箱即用 xxl是xxl-job的開發(fā)者大眾點(diǎn)評(píng)的【許雪里】名稱的拼音開頭 官網(wǎng)地址 分布式任務(wù)調(diào)度平臺(tái)XXL-JOB 文檔地址 中文文檔 English Docu

    2024年02月11日
    瀏覽(21)
  • 【分布式任務(wù)調(diào)度】XXL-JOB的任務(wù)調(diào)度實(shí)現(xiàn)原理(四)

    【分布式任務(wù)調(diào)度】XXL-JOB的任務(wù)調(diào)度實(shí)現(xiàn)原理(四)

    XXL-JOB專題歷史文章列表: XXL-JOB調(diào)度中心集群部署配置(一) XXL-JOB執(zhí)行器配置及定時(shí)任務(wù)的創(chuàng)建(二) XXL-JOB調(diào)度中心對執(zhí)行器的上下線感知實(shí)現(xiàn)原理(三) 本篇的主要內(nèi)容是XXL-JOB的任務(wù)調(diào)度流程及其實(shí)現(xiàn)原理,包含了兩個(gè)部分: 調(diào)度中心如何進(jìn)行任務(wù)調(diào)度 執(zhí)行器執(zhí)行任

    2024年02月16日
    瀏覽(27)
  • XXL-JOB中間件【實(shí)現(xiàn)分布式任務(wù)調(diào)度】

    XXL-JOB中間件【實(shí)現(xiàn)分布式任務(wù)調(diào)度】

    目錄 1:XXL-JOB介紹 2:搭建XXL-JOB 2.1:調(diào)度中心 2.2:執(zhí)行器 2.3:執(zhí)行任務(wù) 3:分片廣播 XXL-JOB是一個(gè)輕量級(jí)分布式任務(wù)調(diào)度平臺(tái),其核心設(shè)計(jì)目標(biāo)是開發(fā)迅速、學(xué)習(xí)簡單、輕量級(jí)、易擴(kuò)展。現(xiàn)已開放源代碼并接入多家公司線上產(chǎn)品線,開箱即用。 官網(wǎng):https://www.xuxueli.com/xxl-

    2024年02月03日
    瀏覽(20)
  • spring boot + xxl-job 分布式任務(wù)調(diào)度

    spring boot + xxl-job 分布式任務(wù)調(diào)度

    1、任務(wù)調(diào)度 1.1、什么是任務(wù)調(diào)度 我們可以先思考一下下面業(yè)務(wù)場景的解決方案: 某電商系統(tǒng)需要在每天上午10點(diǎn),下午3點(diǎn),晚上8點(diǎn)發(fā)放一批優(yōu)惠券。 某財(cái)務(wù)系統(tǒng)需要在每天上午10點(diǎn)前結(jié)算前一天的賬單數(shù)據(jù),統(tǒng)計(jì)匯總。 某電商平臺(tái)每天凌晨3點(diǎn),要對訂單中的無效訂單進(jìn)行

    2024年02月09日
    瀏覽(29)
  • 初識(shí)輕量級(jí)分布式任務(wù)調(diào)度平臺(tái) xxl-job

    初識(shí)輕量級(jí)分布式任務(wù)調(diào)度平臺(tái) xxl-job

    大家好,這里是 Rocky 編程日記 ,喜歡后端架構(gòu)及中間件源碼,目前正在閱讀 xxl-job 源碼。同時(shí)也把自己學(xué)習(xí)該 xxl-job 筆記,代碼分享出來,供大家學(xué)習(xí)交流,如若筆記中有不對的地方,那一定是當(dāng)時(shí)我的理解還不夠,希望你能及時(shí)提出。 如果對于該筆記存在很多疑惑,歡迎

    2024年02月10日
    瀏覽(2161)
  • 【分布式任務(wù)調(diào)度平臺(tái) XXL-JOB 急速入門】從零開始將 XXL-JOB 接入到自己的項(xiàng)目

    【分布式任務(wù)調(diào)度平臺(tái) XXL-JOB 急速入門】從零開始將 XXL-JOB 接入到自己的項(xiàng)目

    ??????????????????????????????? ?? 分布式任務(wù)調(diào)度平臺(tái) X X L ? J O B 急速入門:從零開始將 X X L ? J O B 接入到自己的項(xiàng)目 color{#FF1493}{分布式任務(wù)調(diào)度平臺(tái) XXL-JOB 急速入門:從零開始將 XXL-JOB 接入到自己的項(xiàng)目} 分布式任務(wù)調(diào)度平臺(tái) XX L ? J OB 急速入門:從零

    2024年02月14日
    瀏覽(19)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包