分布式調(diào)度框架哪個好 如何在spring中配置定時任務?
如何在spring中配置定時任務?有很多方法可以實現(xiàn)定時任務,比如JDK自己的定時器任務、Spring3.0的scheduledtask、quartz等等。計時器任務是最基本的解決方案,但它相對古老,
如何在spring中配置定時任務?
有很多方法可以實現(xiàn)定時任務,比如JDK自己的定時器任務、Spring3.0的scheduledtask、quartz等等。
計時器任務是最基本的解決方案,但它相對古老,這里將不討論。Spring自己的scheduled]任務是一個輕量級的scheduled任務調(diào)度器,它支持固定時間(cron表達式)和固定間隔的調(diào)度任務,并支持線程池管理。以上兩種方法都有一個共同的缺點,即任務會在應用服務器集群中被多次調(diào)度,因為集群中的節(jié)點不會共享任務信息,每個節(jié)點上的任務都會按時執(zhí)行。Quartz是一個功能完備的任務調(diào)度框架,特別支持集群環(huán)境下的任務調(diào)度。當然,要花很多錢。它需要將任務調(diào)度狀態(tài)序列化到數(shù)據(jù)庫。Quartz框架需要10多個表來相互協(xié)作,而且不能有多種配置…
經(jīng)過折衷后,選擇spring的scheduledtask來實現(xiàn)計時任務。如下所示:
1。Spring配置文件應用程序-上下文.xml將任務命名空間和描述添加到。
[html]viewplaincopy