亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SpringBoot重啟后,第一次請求接口請求慢的問題及解決

 更新時間:2024年05月21日 11:07:54   作者:影??  
這篇文章主要介紹了SpringBoot重啟后,第一次請求接口請求慢的問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

1、DispatcherServlet默認是懶加載

即工程啟動的時候,Applicationcontext會將所有的bean加載到容器,但是DispatcherServlet是沒有加載的,只有第一次訪問的時候才會加載

場景一

DispatcherServlet懶加載情況,啟動的時候如下圖

只有一個ApplicationContext的初始化,此時并沒有DispatcherServlet的初始化,接下來我們進行一次接口調(diào)用

如下圖:

發(fā)現(xiàn)在進行接口調(diào)用的時候,才初始化了DispatcherServlet,接下來我們再進行一次接口調(diào)用

如下圖:

此時,直接進行方法的調(diào)用和返回。

場景二

spring.mvc.servlet.load-on-startup=1

DispatcherServlet關閉懶加載,啟動的時候如下圖:

同時完成了ApplicationContext和DispatcherServlet的初始化,此時再進行接口調(diào)用,會發(fā)現(xiàn)即便是第一次調(diào)用,也直接進入了方法

如下圖:

通過上述測試可知,通過配置 spring.mvc.servlet.load-on-startup=1 關閉DispatcherServlet懶加載

使第一次接口訪問的時候直接進行方法的調(diào)用,提高速度

2、隨機數(shù)生成慢的原因和解決方案

Java隨機數(shù)生成依賴熵源(Entropy Source)

默認的阻塞型的 /dev/random熵源可能導致阻塞

而換一個非阻塞的 /dev/urandom的熵源就可以了

解決方法

  • 臨時、方便

以這種方式運行jar包

java -Djava.security.egd=file:/dev/./urandom -jar XXX.jar XXX
  • 永久

進入你的JAVA_HOME的jre目錄下找到并vim編輯這個文件:

$JAVA_HOME/jre/lib/security/java.security
  • 找到:
securerandom.source=file:/dev/random 這一行
  • 改之前:
securerandom.source=file:/dev/random
  • 改為:
securerandom.source=file:/dev/urandom

3、進行異步處理

提高整體的響應時間

4、加入緩存

例如熱點數(shù)據(jù)的預加載等,提高響應時間

5、工程啟動之后

就進行一次訪問

@Slf4j
@Configuration
public class LoadDatabase {

    @Bean
    CommandLineRunner initController(RestTemplate restTemplate) {
        return args -> {
            log.info("REQUEST " + restTemplate.execute("http://127.0.0.1:9999/t1", HttpMethod.GET, null, null));
        };
    }
}


總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Java線程之ThreadLocal解析

    Java線程之ThreadLocal解析

    這篇文章主要介紹了Java線程之ThreadLocal解析,ThreadLocal 提供線程的局部變量,每個線程都可以通過get()和set()對局部變量進行操作而不會對其他線程的局部變量產(chǎn)生影響,實現(xiàn)了線程之間的數(shù)據(jù)隔離,需要的朋友可以參考下
    2023-09-09
  • 解決在啟動eclipse的tomcat進行訪問時出現(xiàn)404問題的方法

    解決在啟動eclipse的tomcat進行訪問時出現(xiàn)404問題的方法

    這篇文章主要介紹了解決在啟動eclipse的tomcat進行訪問時出現(xiàn)404問題的方法,感興趣的小伙伴們可以參考一下
    2016-04-04
  • springboot結(jié)合mybatis-plus快速生成項目模板的方法

    springboot結(jié)合mybatis-plus快速生成項目模板的方法

    Mybatis-Plus是一個 Mybatis 的增強工具,在 Mybatis 的基礎上只做增強不做改變,為簡化開發(fā)、提高效率而生,接下來通過本文給大家分享springboot結(jié)合mybatis-plus快速生成項目模板的方法,感興趣的朋友一起看看吧
    2021-06-06
  • 對象轉(zhuǎn)Json字符串時如何忽略指定屬性

    對象轉(zhuǎn)Json字符串時如何忽略指定屬性

    這篇文章主要介紹了對象轉(zhuǎn)Json字符串時如何忽略指定屬性,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Java可變參數(shù)的應用小結(jié)

    Java可變參數(shù)的應用小結(jié)

    這篇文章主要介紹了Java可變參數(shù)的應用小結(jié),實現(xiàn)同一個函數(shù)名,不同參數(shù)個數(shù),實現(xiàn)的方法相同,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-10-10
  • 從Spring源碼解析事務失效的原因

    從Spring源碼解析事務失效的原因

    今天帶大家學習Spring的相關知識,文章圍繞著Spring事務失效的原因等相關知識展開,文中有非常詳細的介紹及圖文示例,需要的朋友可以參考下
    2021-06-06
  • resty的緩存技術設計及使用

    resty的緩存技術設計及使用

    這篇文章主要為大家介紹了resty緩存技術的設計及使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03
  • SpringBoot啟動報錯屬性循環(huán)依賴報錯問題的解決

    SpringBoot啟動報錯屬性循環(huán)依賴報錯問題的解決

    這篇文章主要介紹了SpringBoot啟動報錯屬性循環(huán)依賴報錯問題的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Struts1教程之ActionMapping_動力節(jié)點Java學院整理

    Struts1教程之ActionMapping_動力節(jié)點Java學院整理

    這篇文章主要介紹了Struts1教程之ActionMapping,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • 詳解JAVA使用Comparator接口實現(xiàn)自定義排序

    詳解JAVA使用Comparator接口實現(xiàn)自定義排序

    這篇文章主要介紹了JAVA使用Comparator接口實現(xiàn)自定義排序,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-03-03

最新評論