在nignxi中,超時自動重發,預設是開啟的,需要關閉配置。
nginx中增加配置:
proxy_next_upstream off;
proxy_send_timeout 後端伺服器資料回傳時間(**傳送超時時間)
proxy_read_timeout 連線成功後,後端伺服器響應時間(**接收超時時間)
proxy_connect_timeout nginx連線後端的超時時間,一般不超過75s
1、第一種辦法:因為後端機器無法再進行優化減少響應時間,所以可以更改nginx的超時時間,將原本的15s更改為40s,這樣可以保證結果正常返回。
2、第二種辦法 :關閉自動切換到**機器的功能,即將proxy_next_upstream配置為off。但是這樣雖然能解決問題,但是會導致nginx的容錯能力下降。
3、第三種辦法:從業務角度出發,本質上我們是需要只發一次簡訊的。 所以可以採用分布式鎖的方式解決。
以上現象還可能出現在以下的場景:
1、上傳excel,然後服務端處理excel內容,插入到db裡面的時候,可能存在多次**導致資料重複。
2、post請求處理時間過長,可能出現重複提交的問題。
RPC超時機制
linux下rpc支援簡單的超時重傳機制,採用了固定超時時間間隔和固定重試次數。當rpc服務傳送乙個報文時 對應一次遠端過程呼叫 它便啟動乙個定時器 如果定時器在遠端過程呼叫應答到達前期滿,rpc服務便重發請求。程式設計師可以為某個給定應用調整超時時間間隔以及重試次數,但無法自適應。這種簡單機制無法...
haproxy 超時機制
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!code class python option redispatch option redispatch 是否允許重新分配在session 失敗後 option abortonclose 丟棄由於客戶端等待時間過長而關閉連線但仍在haproxy等...
inpu超時機制
input的超時檢測機制跟service broadcast provider截然不同,為了更好的理解input過程先來介紹兩個重要執行緒的相關工作 input的超時機制並非時間到了一定就會 而是處理後續上報事件的過程才會去檢測是否該 所以更相信是掃雷的過程,具體如下圖所示。inputreader執...