簡體   English   中英

套接字超時對性能的影響

[英]Socket timeout impact on performance

我在 spring 應用程序中為 MongoDB 使用以下配置:

socket Keep Alive=true socket超時=1500

我的應用程序在保存 >=200000 條記錄時拋出套接字超時異常。但如果將套接字超時值保持為 15000 毫秒,則它工作正常。 我想知道,如果我保持套接字超時 60000 毫秒,那么它會影響應用程序性能嗎?

驅動程序不知道連接上沒有接收到數據是因為服務器正在處理查詢,還是因為連接已中斷。 如果將套接字超時設置為 1.5 秒,則所有執行時間超過 1.5 秒的查詢都會收到超時錯誤。

出於這個原因,默認情況下驅動程序不會設置套接字超時。

如果您設置套接字超時,則需要確保它超過您發出的查詢的執行時間。

驅動程序設置 TCP keepalive 以在網絡層連接超時時收到通知。 您可以減少系統范圍的 TCP keepalive 間隔以更快地檢測死連接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM