我有一个工作的 Java servlet,但现在我向它发送了一些请求,但它卡住了 - 正如您在屏幕截图中所见,它工作了超过 48000 秒,即超过半天: https://docs.google.com/open?id=0B-mMfXyy8lylYWZoN0FJQW5aUE0
这以前没有发生过,当我直接从 Java(没有 Tomcat)运行这个函数时也没有发生。
一个。我如何调试它并查看 Tomcat 服务器实际卡在何处?
有没有办法杀死这些请求? (我尝试重新启动 webapp,但请求一直在运行...)
附言我忘了说我在 Windows 服务器上。
最佳答案
一个。我该如何调试它并查看 Tomcat 服务器实际卡在何处?
检查您的应用程序日志(在 tomcat 上),如果您的应用程序有任何问题,这应该会给您一些线索。
获取线程转储并进行分析(有分析线程转储的工具)。如果您的应用程序被挂起,这会有很大帮助。
b。有没有办法杀死这些请求? (我尝试重新启动 webapp,但请求一直在运行...)
您可以通过在您的 unix 主机上运行以下命令来列出所有 java 进程
ps -ef | grep java
这将列出所有 java 进程及其 PID。您可以使用 kill 命令 (kill -9 PID) 终止单个进程。
关于java - tomcat请求需要半天多,还在工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14027964/