ColdFusion JVM使用内存没有明显的原因

时间:2012-11-29 14:05:38

标签: memory-management coldfusion java coldfusion-10

在CF-10上使用服务器监控,我注意到我公司的一个测试服务器上有一个奇怪的行为。以下是服务器上JVM内存使用情况的屏幕截图,CF网站上根本没有发生任何事情,没有任何流量enter image description here

正如您所看到的,使用的内存会稳定上升,直到GC启动(我假设)并将使用过的内存恢复,然后重复该过程。这会导致某种内存泄漏吗?

2 个答案:

答案 0 :(得分:9)

恕我直言,除非你有其他证据,否则这可能是一台健康的服务器。 ColdFusion / Tomcat中有一堆后台进程可以清理并记录监控数据(包括向监控工具提供数据:可能使这个成为Heisenbehaviour)。这些都会在内存时分配内存,并逐渐乱丢垃圾堆直到达到阈值,此时一个小的GC会触发,你的内存会返回到下限。

如果基线(上图中锯齿的底部)在每个连续步骤中较高,那么表明内存泄漏的原因是什么。垃圾收集后立即显示STILL正在使用多少内存,并且在您的图表上看起来非常稳固。

答案 1 :(得分:1)

有关垃圾收集的详细信息

https://www.jaspersoft.com/sunopenjdk-jvm-garbage-collection-tuning-tutorial

另请参阅Java 7中使用的G1垃圾收集器

http://www.oracle.com/technetwork/java/javase/tech/g1-intro-jsp-135488.html

您还可以更改收集垃圾的速率。 不推荐,但可以。在执行此操作之前,请确保您知道如何恢复CF JVM设置

http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html

你可以建议垃圾收集。 不建议,但可以

http://rip747.wordpress.com/2008/09/29/help-force-coldfusion-to-release-memory/

相关问题