第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在Spring Boot中增加Tomcat的連接超時

在Spring Boot中增加Tomcat的連接超時

猛跑小豬 2021-04-09 18:13:53
如何增加超時時間,以便在處理響應(yīng)之前,請求不超時?Spring Boot中的Tomcat設(shè)置:server.tomcat.max-connections=2000server.tomcat.max-threads=200server.connection-timeout=1200000constantUsersPerSec(20) during (15)在15秒的過程中,每秒的請求數(shù)增加到300,并且所有請求均得到滿足,如下面的加特林(藍色)所示。scn.inject(      constantUsersPerSec(20) during (15),     )這是由于max-connections = 2000使用200工作線程處理了300個請求??刂破魇怯肧pring MVC編寫的,它返回后DeferredResult會執(zhí)行異步請求處理,因此一旦響應(yīng)被處理,它將恢復(fù)響應(yīng)。但是,即使server.connection-timeout將其設(shè)置為較高的數(shù)字,1200000也有很多503即將結(jié)束(紅色)> status.find.in(200,304,201,202,203,204,205,206,207,208,209), b     78 (100.0%)ut actually found 503Gatling.conf也設(shè)置為增加超時時間:   timeOut {      simulation = 8640000 # Absolute timeout, in seconds, of a simulation    }    ahc {      #keepAlive = true                                # Allow pooling HTTP connections (keep-alive header automatically added)      connectTimeout = 600000                          # Timeout when establishing a connection      handshakeTimeout = 600000                        # Timeout when performing TLS hashshake      pooledConnectionIdleTimeout = 600000             # Timeout when a connection stays unused in the pool      readTimeout = 600000                             # Timeout when a used connection stays idle      #maxRetry = 2                                    # Number of times that a request should be tried again      requestTimeout = 600000      
查看完整描述

1 回答

?
蕪湖不蕪

TA貢獻1796條經(jīng)驗 獲得超7個贊

檢查以下屬性:spring.mvc.async.request-timeout =#異步請求處理超時之前的時間

此設(shè)置有助于進行其余的配線架配置

spring.mvc.async.request-timeout=1200000

但是,根本原因是,當(dāng)請求數(shù)量很大時,所有工作線程(200)都會占用上載打開的連接(2000)(控制器將MultipartFile作為參數(shù)并返回DeferredResult)

我認為DeferredResult當(dāng)請求服務(wù)邏輯很快而業(yè)務(wù)邏輯很慢(在forkjoin.commonPool上運行)時,它就閃閃發(fā)光。它不太適合MultiPartFile上載(阻塞和緩慢),并且在文件大小較大時不適合,因為自從那時起響應(yīng)就不能快速恢復(fù)(如以上每秒響應(yīng)圖表中所示,僅在幾秒鐘后響應(yīng)就開始恢復(fù),因為打開了連接)是2000,而工人只有200)。如果增加了工作人員,則無論如何都會減輕異步處理的優(yōu)勢。

在這種情況下,請求處理(上傳和阻止)很慢,而業(yè)務(wù)邏輯很快。因此響應(yīng)已經(jīng)準備就緒,但是所有工作線程(200)忙于處理越來越多的請求,因此響應(yīng)沒有恢復(fù),因此超時了。

可能需要為DeferredResult提供單獨的池request serveresponse resume進行異步處理?


查看完整回答
反對 回復(fù) 2021-04-21
  • 1 回答
  • 0 關(guān)注
  • 3168 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號