【发布时间】:2018-11-15 20:07:55
【问题描述】:
我们发现我们的一个应用程序服务器存在一个有趣(尽管相当严重)的问题:在某个时间点,运行我们的 Web 应用程序的 JVM 的 CPU 使用率开始上升并持续上升,直到应用程序最终变慢爬行。修复它的唯一方法是重新启动应用服务器软件。
- 应用服务器:Spring tc Server(因为服务器托管在别处,目前不知道具体版本)
- 应用程序:相对标准的 Spring 3 Web 应用程序(尽管我们确实使用了一个 in-JVM EHCache)
这让我想到了一个简单的问题;我们可以做些什么来解决这个问题?
我考虑过使用 VisualVM(或其他一些 JVM 监控工具),但他们能做的最好的事情 - 在这种特殊情况下 - 给我一个线程转储,它仍然不会告诉我是什么占用了所有 CPU 时间(除非我遗漏了什么)。
【问题讨论】:
标签: java jvm cpu-usage tcserver