我的工作流中有一个即时消息服务器,布署在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列的值,即进程号。
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环境下部署于Tomcat上的即时消息服务器的Socket端口无法正常释放的方法。该问题仅出现在Linux环境中,Windows环境下则能正常运行。文章详细说明了如何通过特定步骤来解决此问题。
1117

被折叠的 条评论
为什么被折叠?



