1

我有一个可以工作的 Java servlet,但现在我向它发送了一些请求,但它卡住了 - 正如您在屏幕截图中看到的那样,它工作了超过 48000 秒,超过半天: https://docs.google。 com/open?id=0B-mMfXyy8lylYWZoN0FJQW5aUE0

这以前没有发生过,当我直接从 Java(没有 Tomcat)运行这个函数时也没有发生。

一种。如何调试它并查看 Tomcat 服务器实际卡在哪里?

湾。有没有办法杀死这些请求?(我尝试重新启动 webapp,但请求继续运行......)

PS我忘了说我在Windows服务器上。

4

1 回答 1

2

一种。如何调试它并查看 Tomcat 服务器实际卡在哪里?

  1. 检查您的应用程序日志(在 tomcat 上),如果您的应用程序有任何问题,这应该会给您一些线索。

  2. 进行线程转储并分析(有分析线程转储的工具)。如果您的应用程序被挂起,这将有很大帮助。

湾。有没有办法杀死这些请求?(我尝试重新启动 webapp,但请求继续运行......)

您可以通过在 unix 主机上运行以下命令来列出所有 java 进程

ps -ef | grep java

这将列出所有 java 进程及其 PID。您可以使用 kill 命令(kill -9 PID)杀死单个进程。

于 2012-12-25T06:46:36.957 回答