调用tomcat关闭脚本和杀掉进程的区别

调用tomcat关闭脚本和杀掉进程的区别

在我们的Linux机器上,有多个运行tomcat的用户。

目前我们正在使用进程终止命令来终止相应用户的 tomcat ,而不是使用 shutdown.sh

使用这种方法有什么缺点吗?

答案1

这取决于什么kill您正在使用的信号:

  • 如果您使用TERM(数字等价于kill -15),理论上您将让java进程向其子​​进程发出信号并以正确的方式退出。

  • 如果你使用KILL( kill -9),你没有, 和你留下了各种临时文件、套接字,等等...后面。

也就是说,tomcat它有自己的正确关闭机制,即您应该使用的 RMI 调用,可以直接使用,也可以使用操作系统的界面:servicestartsystemctl任何其他。

如果你因为某种原因不能这样做,你可以使用类似这样的包装器来提供帮助tanukiwrapper或者supervisord,它也有一个 Web 前端。

答案2

使用 Tomcat 的关机脚本或使用 kill -15 时,行为没有任何区别。最终结果完全相同 - 干净关机。唯一的区别是启动关机过程的代码路径略有不同。

相关内容