【解決方案 十八】連接已重置怎麼辦

最近在開發的過程中,將站點發到了服務器上,然後在本機訪問服務器的站點,結果總是加載很長時間也加載不出來,好不容易加載出來吧,還是這個樣子:
在這裏插入圖片描述
查了很多給了一堆解決方案都沒啥用,後來一登服務器發現cpu和運存幹太滿了:
在這裏插入圖片描述

原來是這個原因啊,那好說,直接把吃內存和cpu的進程幹掉,果然,訪問成功了。從網上查了下連接已重置的原因:

連接重置是 TCP 協議的一種消息。一般來說,例如服務器端在沒有客戶端請求的端口或者其他連接信息不符時,系統的 TCP 協議棧就會給客戶端回覆一個 RESET 通知消息,可見連接重置功能本來用於應對例如服務器意外重啓等情況。而發送連接重置包比直接將數據包丟棄要好,因爲如果是直接丟棄數據包的話客戶端並不知道具體網絡狀況,基於TCP協議的重發和超時機制,客戶端就會不停地等待和重發

實際上就是TCP的重試機制,服務器滿負荷就抗不住訪問壓力,就會不接包,這樣就長期處於連接不上的情況,看來貌似網站攻擊也可以用類似手段,讓你的服務器和cpu承受大量訪問,直接導致滿負荷不讓其它連接正常運轉,學到了,下次有這種問題先看看服務器運行情況。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章