gpt4 book ai didi

java - 在运行时对 Tomcat 7 进行故障排除

转载 作者:行者123 更新时间:2023-11-28 22:45:05 26 4
gpt4 key购买 nike

我有问题,不知道如何找到可能出错的线索。我部署了我的 web 应用程序 (spring - hibernate - MySQL) 并在它启动后的几秒钟内运行良好。我可以浏览页面。比所有请求都得到堆栈并且没有加载任何内容。所有页面都挂了。当我输入错误的页面时出现 PageNotFound 404 错误。

问题是我在 Activity 进程中有 tomcat7.exe,内存随着时间的推移略有增加。所以我怀疑内存泄漏。如何从 tomcat 获取内存堆?什么堆分析器最适合找出泄漏?

PS:原来是ComboPooledDataSource中的maxPoolSize只有15。将其增加到 200,现在一切正常。

最佳答案

此处需要线程转储。它会让您深入了解 Tomcat 处理器 (TP) 线程正在做什么以及堆统计信息(假设是最新的 Sun JVM)。除非您看到高 CPU 使用率与内存增长达到最大配置堆大小,否则内存泄漏可能不是您的问题。

更有可能是阻塞线程和阻止请求完成的情况,可能是连接池等公共(public)资源。如果您不熟悉读取线程转储输出,使用线程转储分析应用程序会有所帮助。您还可以考虑启用 Tomcat 管理器应用程序,它提供一些有用的状态信息(很像 Apache 服务器状态)并使用 jconsole 通过 JMX 监控 JVM。

关于java - 在运行时对 Tomcat 7 进行故障排除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8481343/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com