springboot配置請(qǐng)求超時(shí)時(shí)間(Http會(huì)話和接口訪問(wèn))
1、配置Http會(huì)話超時(shí)
可以通過(guò)兩種方式為Spring Boot應(yīng)用程序配置HTTP會(huì)話超時(shí)。
1.1 application.properties中配置會(huì)話超時(shí)
最簡(jiǎn)單的方法是在你的application.properties中加入?yún)?shù)server.servlet.session.timeout。
server:
servlet:
session:
# 配置會(huì)話超時(shí)
timeout: 120s還要注意的是,Tomcat不允許你將超時(shí)時(shí)間設(shè)置得少于60秒。
1.2 以程序方式配置會(huì)話超時(shí)
假設(shè)我們想讓我們的HttpSession只持續(xù)兩分鐘。為了實(shí)現(xiàn)這一點(diǎn),我們可以在我們的WebConfiguration類中添加一個(gè)EmbeddedServletContainerCustomizerBean,內(nèi)容如下。
@Configuration
public class WebConfiguration {
@Bean
public EmbeddedServletContainerCustomizer embeddedServletContainerCustomizer() {
return new EmbeddedServletContainerCustomizer() {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
container.setSessionTimeout(2, TimeUnit.MINUTES);
}
};
}
}這里再給出一個(gè)使用Java 8和lambda表達(dá)式的捷徑寫法。
public EmbeddedServletContainerCustomizer embeddedServletContainerCustomizer() {
return (ConfigurableEmbeddedServletContainer container) -> {
container.setSessionTimeout(2, TimeUnit.MINUTES);
};
}在應(yīng)用程序啟動(dòng)期間,Spring Boot自動(dòng)配置檢測(cè)到EmbeddedServletContainerCustomizer,并調(diào)用customize(…)方法,傳遞對(duì)Servlet容器的引用。
2、配置接口訪問(wèn)超時(shí)
SpringBoot設(shè)置接口訪問(wèn)超時(shí)時(shí)間有兩種方式
2.1 配置文件方式
在配置文件application.properties中加了spring.mvc.async.request-timeout=120000,意思是設(shè)置超時(shí)時(shí)間為120000ms即120s
# [設(shè)置接口的超時(shí)時(shí)間] spring.mvc.async.request-timeout=120000
2.2 配置Config配置類
還有一種就是在config配置類中加入:
public class WebMvcConfig extends WebMvcConfigurerAdapter {
@Override
public void configureAsyncSupport(final AsyncSupportConfigurer configurer) {
configurer.setDefaultTimeout(20000);
configurer.registerCallableInterceptors(timeoutInterceptor());
}
@Bean
public TimeoutCallableProcessingInterceptor timeoutInterceptor() {
return new TimeoutCallableProcessingInterceptor();
}
}到此這篇關(guān)于springboot配置請(qǐng)求超時(shí)時(shí)間(Http會(huì)話和接口訪問(wèn))的文章就介紹到這了,更多相關(guān)springboot 請(qǐng)求超時(shí)時(shí)間內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 在SpringBoot接口中正確地序列化時(shí)間字段的方法
- SpringBoot項(xiàng)目中Date類型數(shù)據(jù)在接口返回的時(shí)間不正確的問(wèn)題解決
- SpringBoot根據(jù)各地區(qū)時(shí)間設(shè)置接口有效時(shí)間的實(shí)現(xiàn)方式
- SpringBoot優(yōu)化接口響應(yīng)時(shí)間的九個(gè)技巧
- Springboot項(xiàng)目長(zhǎng)時(shí)間不進(jìn)行接口操作,提示HikariPool-1警告的解決
- SpringBoot接口返回的數(shù)據(jù)時(shí)間與實(shí)際相差8小時(shí)問(wèn)題排查方式
相關(guān)文章
Java 高并發(fā)編程之最實(shí)用的任務(wù)執(zhí)行架構(gòu)設(shè)計(jì)建議收藏
高并發(fā)(High Concurrency)是互聯(lián)網(wǎng)分布式系統(tǒng)架構(gòu)設(shè)計(jì)中必須考慮的因素之一,它通常是指,通過(guò)設(shè)計(jì)保證系統(tǒng)能夠同時(shí)并行處理很多請(qǐng)求,高并發(fā)相關(guān)常用的一些指標(biāo)有響應(yīng)時(shí)間(Response Time),吞吐量(Throughput),每秒查詢率QPS(Query Per Second),并發(fā)用戶數(shù)等2021-10-10
Java中Maven項(xiàng)目導(dǎo)出jar包配置的示例代碼
這篇文章主要介紹了Java中Maven項(xiàng)目導(dǎo)出jar包配置的示例代碼,需要的朋友可以參考下2018-11-11
SpringBootAdmin+actuator實(shí)現(xiàn)服務(wù)監(jiān)控
這篇文章主要為大家詳細(xì)介紹了SpringBootAdmin+actuator實(shí)現(xiàn)服務(wù)監(jiān)控,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
Java SpringMVC的@RequestMapping注解使用及說(shuō)明
這篇文章主要介紹了Java SpringMVC的@RequestMapping注解使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01
Spring?@Bean?修飾方法時(shí)注入?yún)?shù)的操作方法
對(duì)于 Spring 而言,IOC 容器中的 Bean 對(duì)象的創(chuàng)建和使用是一大重點(diǎn),Spring 也為我們提供了注解方式創(chuàng)建 bean 對(duì)象:使用 @Bean,這篇文章主要介紹了Spring?@Bean?修飾方法時(shí)如何注入?yún)?shù),需要的朋友可以參考下2023-10-10
Spring?Boot請(qǐng)求處理之常用參數(shù)注解使用教程
這篇文章主要給大家介紹了關(guān)于Spring?Boot請(qǐng)求處理之常用參數(shù)注解使用的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-03-03
SpringBoot+Thymeleaf靜態(tài)資源的映射規(guī)則說(shuō)明
這篇文章主要介紹了SpringBoot+Thymeleaf靜態(tài)資源的映射規(guī)則說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11
詳解關(guān)于springboot-actuator監(jiān)控的401無(wú)權(quán)限訪問(wèn)
本篇文章主要介紹了詳解關(guān)于springboot-actuator監(jiān)控的401無(wú)權(quán)限訪問(wèn),非常具有實(shí)用價(jià)值,有興趣的可以了解一下2017-09-09

