今天下午剛從客戶坐車回來晚上洗完澡悶熱的天氣讓人睡不著覺就和大家分享一下windows server socket端口的默認的數量修改方式
導致問題從項目上線之後客戶說一個月就會宕機一次系統用戶無法正常登陸後台報異常無法連接而整個集團的並發數並沒有到一個很大的數量級每次宕機單純的重啟web服務器以及數據庫服務無法到達解決問題的辦法必須要重啟電腦因此思路就轉向了承載web服務器本身的服務器每次都是按照socket來進行數據的讀取而每Socketclose()是不馬上釋放連接的而是設置為time_wait狀態這個時間默認是S這個就是有點太長可以設定為最小值s而設定最小值之前必須要進行下面解決方式的第一步而後進行第二步s的設置下面解決socket的問題下面把解決方式貼出來
解決方式
第一步啟動注冊表編輯器HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters
第二步新建
值名稱MaxUserPort
值類型 DWORD
值數據 (用十進制的方法寫進去就可以)
有效范圍 (十進制)
默認 x (十進制)
第三步新建
值名稱TCPTimedWaitDelay
值類型 DWORD
值數據 e(也就是這個表示TIME_WAIT的秒數)
重啟電腦問題解決
From:http://tw.wingwit.com/Article/Common/201311/5414.html