Question
CF 8 JVM memory is not being garbage collected.
I am baffled by something I am seeing on my QA server. I have
an app that we load tested but when the test completed the JVM
memory used was not released. I used CF Server Monitor to watch the
memory usage and sometimes it spiked to the max and either the app
failed or I got timeout exceptions.
This is the only app running on this server and the testing completed over an hour ago but the memory has not been released yet.
CF Admin settings:
Maximum JVM Heap Size (MB) 512
The CF Server JVM Setting arguments include: -server -Dsun.io.useCanonCaches=false -XX:MaxPermSize=192m -XX:+UseParallelGC
I found a script that uses java.lang.Runtime and java.lang.management.managementFactory that dumps a JVM memory usage profile The latest dump follows:
JVM Monitor - ColdFusion Server - Enterprise v8,0,1,195765
JVM Memory Monitor - struct
Heap Memory Usage - Committed 481 MB
Heap Memory Usage - Initial 0.00 MB
Heap Memory Usage - Max 493 MB
Heap Memory Usage - Used 437 MB
JVM - Free Memory 44.0 MB
JVM - Max Memory 493 MB
JVM - Total Memory 481 MB
JVM - Used Memory 449 MB
Memory Pool - Code Cache - Used 8.80 MB
Memory Pool - PS Eden Space - Used 6.37 MB
Memory Pool - PS Old Gen - Used 428 MB
Memory Pool - PS Perm Gen - Used 52.4 MB
Memory Pool - PS Survivor Space - Used 3.50 MB
Non-Heap Memory Usage - Committed 62.8 MB
Non-Heap Memory Usage - Initial 18.3 MB
Non-Heap Memory Usage - Max 240 MB
Non-Heap Memory Usage - Used 61.2 MB
According to the CF Server Monitor JVM memory usage builds up to 477 MB then the app fails or timesout.
Session Scope memory usage: 0.27 KB
Application Scope memory usage: 1.370 KB
Server Scope memory usage: 3.12 KB
Since the test ended JVM Memory Usage has dropped back to 438 MB?
Besides CFAdmin nothing else is running on this CF Server. I've read several other memory related topics but none of them have helped.
Can someone tell me why the memory isn't being release? How can I further troubleshoot the problem?
Thx
pwp
This is the only app running on this server and the testing completed over an hour ago but the memory has not been released yet.
CF Admin settings:
Maximum JVM Heap Size (MB) 512
The CF Server JVM Setting arguments include: -server -Dsun.io.useCanonCaches=false -XX:MaxPermSize=192m -XX:+UseParallelGC
I found a script that uses java.lang.Runtime and java.lang.management.managementFactory that dumps a JVM memory usage profile The latest dump follows:
JVM Monitor - ColdFusion Server - Enterprise v8,0,1,195765
JVM Memory Monitor - struct
Heap Memory Usage - Committed 481 MB
Heap Memory Usage - Initial 0.00 MB
Heap Memory Usage - Max 493 MB
Heap Memory Usage - Used 437 MB
JVM - Free Memory 44.0 MB
JVM - Max Memory 493 MB
JVM - Total Memory 481 MB
JVM - Used Memory 449 MB
Memory Pool - Code Cache - Used 8.80 MB
Memory Pool - PS Eden Space - Used 6.37 MB
Memory Pool - PS Old Gen - Used 428 MB
Memory Pool - PS Perm Gen - Used 52.4 MB
Memory Pool - PS Survivor Space - Used 3.50 MB
Non-Heap Memory Usage - Committed 62.8 MB
Non-Heap Memory Usage - Initial 18.3 MB
Non-Heap Memory Usage - Max 240 MB
Non-Heap Memory Usage - Used 61.2 MB
According to the CF Server Monitor JVM memory usage builds up to 477 MB then the app fails or timesout.
Session Scope memory usage: 0.27 KB
Application Scope memory usage: 1.370 KB
Server Scope memory usage: 3.12 KB
Since the test ended JVM Memory Usage has dropped back to 438 MB?
Besides CFAdmin nothing else is running on this CF Server. I've read several other memory related topics but none of them have helped.
Can someone tell me why the memory isn't being release? How can I further troubleshoot the problem?
Thx
pwp
