在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Quartz任務調度基本實現原理

jf_78858299 ? 來源:SpringBoot ? 作者: 林祥纖 ? 2023-04-12 10:48 ? 次閱讀

(1)什么是Quartz?

Quartz是一個完全由Java編寫的開源作業調度框架,為在Java應用程序中進行作業調度提供了簡單卻強大的機制。Quartz允許開發人員根據時間間隔來調度作業。它實現了作業和觸發器的多對多的關系,還能把多個作業與不同的觸發器關聯。簡單地創建一個org.quarz.Job接口的Java類。

(2)Quartz的特點;

作為一個優秀的開源調度框架,Quartz 具有以下特點:

① 強大的調度功能,例如支持豐富多樣的調度方法,可以滿足各種常規及特殊需求;

② 靈活的應用方式,例如支持任務和調度的多種組合方式,支持調度數據的多種存儲方式;

③ 分布式和集群能力,Terracotta 收購后在原來功能基礎上作了進一步提升。

④ Quartz 很容易與 Spring 集成實現靈活可配置的調度功能。

(3)Quartz專用詞匯說明;

下面是本文中用到的一些專用詞匯,在此聲明:

scheduler

任務調度器

trigger

觸發器,用于定義任務調度時間規則

job

任務,即被調度的任務

misfire

錯過的,指本來應該被執行但實際沒有被執行的任務調度

(4)Quartz任務調度基本實現原理;

Quartz 任務調度的核心元素是 scheduler, trigger 和 job,其中 trigger 和 job 是任務調度的元數據, scheduler 是實際執行調度的控制器

在 Quartz 中,trigger 是用于定義調度時間的元素,即按照什么時間規則去執行任務。Quartz 中主要提供了四種類型的 trigger:SimpleTrigger,CronTirgger,DateIntervalTrigger,和 NthIncludedDayTrigger。這四種 trigger 可以滿足企業應用中的絕大部分需求。

在 Quartz 中,job 用于表示被調度的任務。主要有兩種類型的 job:無狀態的(stateless)和有狀態的(stateful)。對于同一個 trigger 來說,有狀態的 job 不能被并行執行,只有上一次觸發的任務被執行完之后,才能觸發下一次執行。Job 主要有兩種屬性:volatility 和 durability,其中 volatility 表示任務是否被持久化到數據庫存儲,而 durability 表示在沒有 trigger 關聯的時候任務是否被保留。兩者都是在值為 true 的時候任務被持久化或保留。一個 job 可以被多個 trigger 關聯,但是一個 trigger 只能關聯一個 job。

在 Quartz 中, scheduler 由 scheduler 工廠創建:DirectSchedulerFactory 或者 StdSchedulerFactory。 第二種工廠 StdSchedulerFactory 使用較多,因為 DirectSchedulerFactory 使用起來不夠方便,需要作許多詳細的手工編碼設置。 Scheduler 主要有三種:RemoteMBeanScheduler, RemoteScheduler 和 StdScheduler。本文以最常用的 StdScheduler 為例講解。這也是筆者在項目中所使用的 scheduler 類。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • JAVA
    +關注

    關注

    20

    文章

    2983

    瀏覽量

    106549
  • 框架
    +關注

    關注

    0

    文章

    404

    瀏覽量

    17744
  • 觸發器
    +關注

    關注

    14

    文章

    2029

    瀏覽量

    61768
  • Quartz
    +關注

    關注

    0

    文章

    7

    瀏覽量

    8042
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    STM32 簡單多任務調度

    不需要這樣頻繁的執行,白白耗費了CPU的處理。因此可以考慮實現一個調度策略來解決這個問題。對于每個任務,我們可以定義這樣一個結構:typedef struct{void (*fTask)(void
    發表于 03-09 15:59

    如何利用UCOS引發任務調度

    我看資料中的任務調度往往發生在程序延時中,程序釋放CPU引發任務調度,但是我希望程序能夠更快的運行,不想使用延時函數,有什么其他的方法開啟任務
    發表于 10-24 04:36

    請問FreeRTOS是如何實現調度的?

    了stm32的官方例程,原理上的東西大致懂了,可在程序中是如何實現的呢,C語言障礙,沒看懂。首先是調度函數,函數函數是如何執行的呢?如下圖,新建任務后執行調度函數,為什么沒用循環,
    發表于 07-30 07:40

    調度器的原理及其任務調度代碼實現

    、超級循環2、時間片與時標3、調度算法介紹1)時間片輪轉調度2)強制試調度4、注意事項所有任務的執行時間不能超過時標的時間三、任務
    發表于 02-17 07:07

    UCOSIII的任務管理與任務調度和切換簡述

    就緒表7、任務調度和切換1、任務調度時間片輪轉調度2、任務切換8、UCOSIII的
    發表于 02-18 06:14

    網格任務調度算法研究

    網格任務調度算法是影響網格成功與否的關鍵技術之一。本文總結了網格計算系統的體系結構和特征,分析了網格任務調度算法的基本原理和性能指標,并對各種調度
    發表于 08-14 10:27 ?10次下載

    任務閾值調度算法

    針對當前云任務調度算法在密碼云環境中無法實現任務實時處理的問題,提出一種基于滾動優化窗口的實時閾值調度方法。首先,將密鑰調用環節融入密碼任務
    發表于 11-24 17:08 ?5次下載
    云<b class='flag-5'>任務</b>閾值<b class='flag-5'>調度</b>算法

    移動終端最優節能任務調度

    討論在移動終端設備下硬實時任務調度的原理、機制、策略。在硬實時任務對時效性的要求與現時任務對能耗管理的要求這2個約束條件下對任務進行
    發表于 02-07 16:30 ?1次下載

    spring4.0如何整合Quartz實現任務調度詳細資料和程序說明

    Quartz框架是一個全功能、開源的任務調度服務,可以集成幾乎任何的java應用程序—從小的單片機系統到大型的電子商務系統。Quartz可以執行上千上萬的
    發表于 05-06 18:23 ?1次下載
    spring4.0如何整合<b class='flag-5'>Quartz</b><b class='flag-5'>實現任務</b><b class='flag-5'>調度</b>詳細資料和程序說明

    如何使用spring4.0整合Quartz實現動態任務調度的程序資料說明

    Quartz框架是一個全功能、開源的任務調度服務,可以集成幾乎任何的java應用程序—從小的單片機系統到大型的電子商務系統。Quartz可以執行上千上萬的
    發表于 04-26 18:26 ?0次下載
    如何使用spring4.0整合<b class='flag-5'>Quartz</b><b class='flag-5'>實現</b>動態<b class='flag-5'>任務</b><b class='flag-5'>調度</b>的程序資料說明

    DSP實時多任務調度的解決方案

    本文闡述了一個用于DSP的簡潔而實用的實時多任務調度內核的實現方法。DSP由于其架構的特殊性,在任務調度方面與
    的頭像 發表于 03-24 15:22 ?5162次閱讀

    c語言實現任務調度

    、超級循環2、時間片與時標3、調度算法介紹1)時間片輪轉調度2)強制試調度4、注意事項所有任務的執行時間不能超過時標的時間三、任務
    發表于 12-22 18:51 ?8次下載
    c語言<b class='flag-5'>實現任務</b><b class='flag-5'>調度</b>器

    Quartz中編碼中用到的幾個對象

    在使用Quartz的時候,我們需要用到Quartz的幾個對象:Job(任務),JobDetail(任務定義:使用JobDetail來定義定時任務
    的頭像 發表于 04-12 10:50 ?635次閱讀

    任務調度系統設計的核心邏輯

    Redis的讀寫性能極好,分布式鎖也比Quartz數據庫行級鎖更輕量級。當然Redis鎖也可以替換成Zookeeper鎖,也是同樣的機制。 在小型項目中,使用:定時任務框架(Quartz/Spring Schedule)和
    的頭像 發表于 01-02 15:09 ?1166次閱讀
    <b class='flag-5'>任務</b><b class='flag-5'>調度</b>系統設計的核心邏輯

    鴻蒙OS 分布式任務調度

    形式、數據結構、服務描述語言,屏蔽硬件差異;支持遠程啟動、遠程調用、業務無縫遷移等分布式任務。 分布式任務調度平臺在底層實現 Ability(分布式
    的頭像 發表于 01-29 16:50 ?716次閱讀
    主站蜘蛛池模板: 精品在线一区二区三区 | 久久国产热 | 成人激情综合网 | 一二三四日本视频社区 | 天天操夜夜爱 | 午夜影院免费观看视频 | 国产精品免费看久久久 | 人人添| 青草国内精品视频在线观看 | 最近免费 | 日夜夜操 | 91中文在线 | 美女视频一区二区三区 | aaaaa国产毛片 | 久操视频在线播放 | 四虎永久免费网站免费观看 | 一级a毛片免费观看 | 国产乱人视频免费播放 | 明日花绮罗snis-862在线播放 | 狠狠色丁香婷婷 | 日韩精品一区二区在线观看 | 巨臀中文字幕一区二区翘臀 | 成人午夜性a一级毛片美女 成人午夜性视频欧美成人 成人小视频在线 | 天天干天天爱天天射 | 欧美日韩精品一区二区另类 | 一级毛片在线不卡直接观看 | 国产精品久久婷婷六月丁香 | 高清一区二区三区视频 | 欧美人交性视频在线香蕉 | 好紧好爽水真多18 | 免费一级视频在线播放 | 成 人 免费 黄 色 视频 | 亚洲成a人片在线观看www | 最新四虎4hu影库地址在线 | 国产精品久久久久久久人热 | 亚洲欧美日韩综合一区 | 国产成人夜间影院在线观看 | 天天操天天操天天操 | 日本最色视频 | 亚洲欧洲综合网 | 欧美成人三级伦在线观看 |