我们遇到了JVM内存使用率逐渐增加,然后影响CPU性能的问题。它增加了CPU时间。 我们正在尝试利用堆转储来分析问题。但是想了解什么是典型的程序 - 看着gc日志,看着堆转储提供所需的信息。 有什么需要注意的其他事情?分析内存问题
Q
分析内存问题
-1
A
回答
0
下面是我们如何分析这个问题:
- 看着我们最近的代码更改识别区改变
- 拿了堆转储
- 看着线程转储(不是非常有用我们目前的分析)。 Heapdump告诉我们这些内存非常高的对象,这些对象是缓存对象。
但是最近的代码改变有助于我们解释我们目前的情况。其实有趣的是我们增加了一些我们分叉的线程超时。这在内部导致了很多并发性,并且导致内存使用增加,因为一些对象现在可能在GC支持之前保持更长时间。我们的用例支持这种争用的可能性。
总的来说,我可以理解的是堆转储,线程转储和最近的更改 - 所有看起来一起帮助我们理解问题。他们中的任何一个都没有意义。
2
你可能会觉得这篇文章很有用。
0
请看堆转储和GC转储,并尝试anaylse,当时当GC达到了顶峰,任何重大的任务是怎么回事。例如 - 当时在你的服务器上的Cron作业等等。
你会得到一个想法,究竟是什么影响你的应用程序。
0
我采用的方法是使用内存配置文件来减少GC之后保留的内存量和丢弃的垃圾量。减少对象丢弃可以提高性能并减少配置文件结果中的噪音。
相关问题
- 1. 分析仪存在内存泄漏问题?
- 2. 内存分配的问题++
- 3. 内存分配问题
- 4. C++内存分配问题
- 5. 内存分配问题
- 6. iphone内存分配问题
- 7. 内存分配问题
- 8. 内存分配问题
- 9. Windows内存分配问题
- 10. Eclipse内存分配问题
- 11. C内存分配问题
- 12. pushViewController内存分配问题
- 13. C++分配内存问题
- 14. 内存分析
- 15. 分析问题
- 16. 内存分配/重新分配问题
- 17. CUDA内存分配和访问问题
- 18. 内存访问性能分析
- 19. 堆内存分析
- 20. dotMemory内存分析
- 21. Android内存分析
- 22. 内存分析器
- 23. Struts/JSP/J2EE性能和内存分析及问题
- 24. 用MAT分析内存 - 有关UTF字符的问题
- 25. Oracle分析问题
- 26. Sonarqube分析问题
- 27. Android ==>内存分析==> Eclipse内存分析器?
- 28. 内存问题?
- 29. 内存问题
- 30. 内存问题