linux下,socket埠不能釋放

2021-06-13 10:52:49 字數 424 閱讀 2994

我的工作流中有乙個即時訊息伺服器,佈署在tomcat下。在linux系統環境下啟動tomcat後,伺服器跟著啟動,指定socket埠處於監聽狀態,但在tomcat停止時,socket不能釋放。同樣的應用,在windows環境下就是正常的。

a)在linux下啟動訊息伺服器時,用「/tomcat/bin/catalina.sh run」命令。如果當前在bin目錄下,執行「./catalina.sh run 」。結束訊息服務時,直接按ctrl+c。不能用其它命令。

b)如果用遠端登陸軟體時,可能會把操作視窗關閉,不支援ctrl+c快捷鍵。此時可以執行如下命令:

lsof –i:9888中的9888為被占用的socket埠號。

kill -9 4495中的4495為lsof命令顯示的pid列的值,即程序號。

執行後可正常啟動服務。

**:

Linux系統 socket埠復用

1 埠復用 埠復用最常用的用途是 設定方法 int opt 1 so reuseaddr,setsockopt sockfd,sol socket,const void opt,sizeof opt 注意事項 為什麼要有這個埠復用呢 因為在服務端結束後,也就是第三次揮手的時候會有個等待釋放時間,這個...

linux下socket程式設計

一 什麼是socket socket可以看成是使用者程序與核心網路協議棧的程式設計介面。socket不僅可以用於本機的程序間通訊,還可以用於網路上不同主機的程序間通訊。socket api是一層抽象的網路程式設計介面,適用於各種底層網路協議,如ipv4 ipv6。struct sockaddr in...

linux下socket程式設計

作為乙個嵌入式開發者,在實際的研發專案中,常常需要編寫socket網路程式設計介面,提供給軟體開發人員。下面將提供乙個常用的 模板 客戶端的功能可以用微控制器多功能除錯助手進行驗證 include include include include include include include def...