I'll add a fourth to that.
Rouge queries J From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Grant Straker Sent: Wednesday, 14 May 2008 5:58 PM To: [email protected] Subject: [cfaussie] Re: JVM Heap Size Hey Guys, If you're JVM is running out of memory then there are 3 main reasons in my experience 1. You are putting too much stuff into memory, normal cause is that you are running a lot of queries. 2. You have unvar'd variables in a CFC 3. Perm size too small The size of the heap is a function of tuning the JVM based on how your specific application uses memory. Quick rule would be to give it as much as you can. There are other factors such as garbage collection and Perm memory. You might find upping the perm size can fix things, the perm is like an index of stuff in the heap and can also run out of memory, early version of CF came with a silly perm size which was way too small. In the days of CF6 we were plagued by performance issues which drove me to invest a huge amount of time to figure out why and then have enough material to write a book on the subject. Since then the following have resolved most issues: 1. We addressed the issues in our code base causing the issues ( many of which we didn't know would cause us an issue at the time of writing them) 2. We tuned servers based on a simple profiler 3. Got our customers to read my book and figure out site specific issues themselves On top of this other major factors that have helped : 1. New versions of Java (1.4,1.5 and 1.6 all had big performance improvements) 2. New versions of CF (CF8 rocks for performance) 3. Memory and CPU power of servers increasing We very seldom have to deal with performance issues these days and have much larger applications running and a lot more clients so one or all of the above helped for sure. As a few people a month still purchase my book (and the Mrs lets me have it as my beer money) I'm not feeling charitable enough to give out to the community just yet but should maybe blog a few pointers. Grant On Tue, May 13, 2008 at 7:40 PM, Kai Koenig <[EMAIL PROTECTED]> wrote: Heya, I've given a MXDU presentation on that stuff in 2005 (<http://www.bloginblack.de/archives/000630.cfm>) - Slide 34 actually has a few good references to read up on the topic if you like. Basically - I can't agree more to Stephen - JVM settings can ruin your performance if done wrongly and they can improve your performance as soon as your systems architecture derives from the standard environment. Not sure which JVM you're on, here's another good read for 1.4.2: <http://java.sun.com/docs/hotspot/gc1.4.2/> Cheers Kai >On May 12, 12:07 pm, "Steve Onnis" <[EMAIL PROTECTED]> wrote: >> Can someone shed some light on what the JVM Heap Size is actually meant to >> do? For example, if I set it to the max heap size of 512mb, does that mean >> that the actual memory consumed by the jrun.exe should not exceed 512mb ? >> >> I have an issue where if the jrun.exe memory usage goes over say 600mb the >> cf server just dies and stops responding unless I restart the cf server and >> its driving me bananas. >> >> Anyone got any ideas? > >Is this single-processor, multi-processor? Have you got any settings >for Garbage Collection (concurrent,parallel copying, parallel >scaveging?) >I got a copy of "CFMX troubleshooting and Optimization" by some Nu >Zeelun dude (hello Grant) and it says >"If you are using more than one processor than the selecting the >correct collector can have a major impact on JVM" > >regards, >Stephen >> >> Steve >> --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "cfaussie" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~----------~----~----~----~------~----~------~--~---
