激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 聊聊SpringBoot的@Scheduled的并發問題

聊聊SpringBoot的@Scheduled的并發問題

2022-03-09 00:48正兒八經的胡說八道 Java教程

這篇文章主要介紹了聊聊SpringBoot的@Scheduled的并發問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

SpringBoot @Scheduled的并發

由于SpringBoot自帶的@Scheduled是一個阻塞執行的定時任務,所以效率會很慢,就會造成同一個時間段內只有一個定時任務在執行,其余的就會阻塞

現有兩個定時任務

?
1
2
3
4
5
6
7
8
9
10
11
12
13
@Component("aa")
public class aa {
    @Scheduled(cron = "0 44 17 * * ?")
    public void bb() {
        try {
            System.out.println("aa執行時間:" + new Date());
            Thread.sleep(65000);
            System.out.println("aa完成時間:" + new Date());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
?
1
2
3
4
5
6
7
8
9
10
11
12
@Component("bb")
public class bb {
    @Scheduled(cron = "0 55 17 * * ?")
    public void aa() {
        try {
            System.out.println("bb執行時間:" + new Date());
            Thread.sleep(10000);
            System.out.println("bb完成時間:" + new Date());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

默認的在啟動項加入@EnableScheduling注解就可以運行了

聊聊SpringBoot的@Scheduled的并發問題

最終,執行的結果令人大跌眼鏡。

聊聊SpringBoot的@Scheduled的并發問題

aa的任務由于執行時間需要65秒,超過了bb任務執行的時間,結果bb任務執行的時間被阻塞掉,延遲了5秒執行。

解決方法是在啟動項類中加入如下配置即可

?
1
2
3
4
5
6
@Bean
   public TaskScheduler taskScheduler() {
       ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler();
       taskScheduler.setPoolSize(50);
       return taskScheduler;
   }

如果是xml

?
1
2
3
4
<!-- 注解式 -->
<task:annotation-driven executor="myExecutor" scheduler="myScheduler"/>
<task:executor id="myExecutor" pool-size="5"/>
<task:scheduler id="myScheduler" pool-size="10"/>

spring @Scheduled 并發執行

spring @Scheduled ,默認基于單線程執行,如果需要基于多線程執行,需要在配置文件中配置如下

?
1
2
queue-capacity="500" rejection-policy="CALLER_RUNS" />
scheduler="scheduler" />

具體可以參考spring 幫助文檔對annotation-driven的executor和scheduler的解釋

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/weixin_43958556/article/details/116456909

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 日韩在线激情 | 国产成人在线免费视频 | 国产精品成人一区二区三区电影毛片 | 91九色视频在线播放 | 日本黄色一级视频 | 欧美激情精品久久久久久久久久 | 欧美日韩视频网站 | 国产精品九九久久一区hh | 国色天香综合网 | 网站毛片 | 国产精品久久国产精品 | 韩国一级免费视频 | 牛牛视频在线 | 九九视频精品在线观看 | 亚洲免费永久 | 免费一级在线视频 | 91国在线高清视频 | 亚洲精品久久久久久 | 免费视频www在线观看 | 欧美人与牲禽动交精品一区 | 亚洲第一页综合 | 成人爽a毛片免费啪啪红桃视频 | 亚洲性综合网 | 亚洲精品久久久久久下一站 | hdbbwsexvideo| 久久久www成人免费毛片 | 午夜国产福利 | 欧美精品一级 | 亚欧在线免费观看 | 亚洲欧美日韩综合一区 | 久久男人视频 | 久久影院yy6080 | 999精品国产 | 黄色网址入口 | 99ri精品| 日本一区二区三区视频在线 | 欧美一区公司 | 粉嫩粉嫩一区二区三区在线播放 | 日韩视频一 | 精品国产看高清国产毛片 | 欧美中文在线 |