2013-02-21 79 views
0

我無法關閉服務器並重新打開。我試着用命令的大量殺死它,但我似乎仍然具有的CLOSE_WAITS負荷結束:如何強制CLOSE_WAIT停止

netstat -a | grep 8043 
tcp  1  0 localhost:60667   localhost:8043   CLOSE_WAIT 
tcp  1  0 localhost:60830   localhost:8043   CLOSE_WAIT 
tcp  1  0 localhost:60828   localhost:8043   CLOSE_WAIT 
tcp  1  0 localhost:60820   localhost:8043   CLOSE_WAIT 
tcp  1  0 localhost:60821   localhost:8043   CLOSE_WAIT 
tcp  1  0 localhost:60818   localhost:8043   CLOSE_WAIT 
tcp  1  0 localhost:60802   localhost:8043   CLOSE_WAIT 
tcp  1  0 localhost:60819   localhost:8043   CLOSE_WAIT 

我知道是什麼原因是由於一些代碼崩潰,因爲我正在開發它。什麼是殺死它的方法?它的GNU/Linux服務器。

+1

你不殺它(你不能,它不運行)。你重用端口 – 2013-02-21 01:05:55

+0

當我去重新啓動tomcat服務器時,它掛着它作爲它的啓動startup.sh。我以爲這是它不是的原因? – 2013-02-21 01:07:40

+0

'CLOSE_WAIT'表示TCP正在等待本地應用程序關閉套接字,FIN已經被對等方接收。所以應用程序必須仍在運行。除了殺死這個過程外,你無法從外面做任何事情。 – EJP 2013-02-21 04:29:26

回答

0

雖然解決你的問題爲時已晚,但我爲未來回答這個問題。

N.B.這是爲Apache服務器。這同樣適用於tomcat或其他人。我沒有嘗試別人。

我面臨同樣的問題。我關閉了一個端口的服務器,但得到它掛在CLOSE_WAIT狀態。下面的命令爲我解決了。

sudo /etc/init.d/apache2 restart 

這不過是重新啓動Apache。