[英]Rest request socket timeout on client - what happens to remote request in webservice
我已經創建了一個調用外部Web服務的Java Web應用程序。
設置為每個服務調用具有45秒的套接字超時(此超時對應於等待響應的時間)。
有時,遠程Web服務需要超過45秒的響應時間,並且套接字超時。 這很罕見,但是有可能發生。
我的問題/困惑是,如果我在客戶端應用程序上超時,那么對Web服務上的請求的反應如何。
根據我的觀察,我認為正在發生的事情是請求一直存在於Web服務中,直到完成為止,但是再也沒有等待響應的內容了。
這與正常行為一致嗎? 是否應該以某種方式在Web服務中進行處理? 即,Web服務中是否有一種方法可以知道客戶端應用程序不再偵聽並停止處理。
另外,丟失的請求會如何處理?
我問這個問題是因為我不想導致資源泄漏或Web服務中的線程掛起
謝謝
發送響應時,Web服務最終將遇到“連接重置”,並且容器將正確恢復。
如果您使用restTemplate,請增加時間:rest.service.connection.timeout; 嘗試將其設置為30秒。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.