我的一个应用程序在运行 Java 1.6 的 Tomcat 5.5 的 Windows 服务实例上运行。如果 SOAP 请求超时,应用程序会在代码中创建 NullPointerException。
今天早上我们遇到了一个问题,SOAP 请求另一端的组件不可用。结果是大约一万个 NullPointerExceptions。在我们让失败的组件再次运行后,异常停止了。但是,我们注意到我们的应用程序仍然执行缓慢。
重启Tomcat服务后,应用性能立马提升。我发现这只是一个巧合,但我的队友们持怀疑态度。
是否所有这些 NPE 都可能导致 Tomcat 中的性能问题,但在很久异常停止之后?
谢谢!
IVR复仇者
最佳答案
有很多可能的问题:
- 异常导致内存泄漏。
- 异常在某些线程中导致无限循环。
- 重新加载应用程序导致内存泄漏。
- HotSpot 针对失败异常的情况进行了优化(应该会很快再次自行解决)。
关于java - NullPointerExceptions 在停止发生后会导致 Tomcat 性能问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1428935/