Tomcat Windows 服务操作指南列出了一些从命令行运行/停止/等服务的命令。例如:
Tomcat7 //ss// (with whatever parameters)
仅使用 Windows NET START 和 NET STOP 或 Powershell Start-Service 和 Stop-Service 有什么实际区别吗?使用 Tomcat 命令是否“更好”?即,如果我使用 NET STOP,是否有可能 Tomcat 无法正确清理自身,或者类似情况?
答案1
与使用 Tomcat 帮助程序相比,我在停止其他服务时从未遇到任何问题。
答案2
使用 Tomcat 命令是否“更好”?
它们是等效的:任何停止服务的 Windows 可执行文件最终都会调用ControlService
带参数的Windows API函数SERVICE_CONTROL_STOP
。
Tomcat 服务控制可执行文件实际上被称为普罗克鲁恩。它确实有一个不错的--StopTimeout
参数,可以等待服务终止。根据 Tomcat 实例运行的应用程序,此参数可能在自动化脚本中很有用。(我在Apache Tomcat 设置等待升级期间服务停止。)