To that I'd add, "and just watch for outofmemory errors in the "out" logs in
[CF]\runtime\logs, [jrun]\logs, or [cf10]\[instance]\logs (or if on *nix,
the [cf]\logs\cfserver.log).

If you have set memory too low, you'll get outofmemory heap errors. If you
did not, you will not. Don't judge based on "memory use" as observed in the
OS (especially) or in tools that show heap use, since the JVM may let heap
use grow to upwards 98% before doing a GC, at which point if it can GC a
lot, then there was no "problem" with the "high memory".

Then again, if you DO get an outofmemory heap error, an argument can be made
that just because you're filling the heap (to the point of getting an error)
does not mean that "adding heap" is the right answer. Maybe the better
answer is "reduce what's putting pressure on the heap".  Maybe you have tens
of thousands of sessions created by spiders, bots, ping/site monitoring
tools, and so on. Maybe you made the query cache too large and are using too
much.

Beware, too, to not just jump to conclusions if you get "any" outofmemory
errors while watching for them. For instance, an outofmemory permgen means
you need to increase permgen (or stop what's putting pressure on it, which
is often due to your template cache size being too small).  Or you may get
outofmemory "swap space" errors, which may mean that something else on the
box is stealing memory so that CF can't allocate what it wants, and so on.

The reason you don't see much on this, Frank, is because honestly there is a
log of misinformation, old wives tales, and a proclivity to share
tweet-sized answers. More than that, as Cam notes, so many people share
"what worked for them", without any context of their environment, their
load, etc. I see people trade jvm tweaks like baseball cards, with no
explanation of "why".  And with people offering "what to do" without
offering "how to diagnose/monitor/reconfigure", much of the info out there
is really borderline useless in my opinion.

Sometimes, you really can't do better than to hire someone to spend a little
time (perhaps less than an hour) to help with the above. This is indeed the
kind of work I do. Cam, do you do it also? John (Mason) can help with it as
well. Others here?

 

/charlie

 

From: [email protected] [mailto:[email protected]] On Behalf Of Cameron
Childress
Sent: Monday, August 20, 2012 6:32 PM
To: [email protected]
Subject: Re: [ACFUG Discuss] min JVM heap memory

 

On Mon, Aug 20, 2012 at 3:40 PM, Frank Moorman <[email protected]>
wrote:

I would like to know a good recommendation for setting the Min JVM heap
size. I
did a search and there is not a lot out there on the subject. 

 

This is because, generally, there is no rule of thumb here. Different apps
act differently and run smoother under completely different configurations.
Any advice you see out there is probably what someone found on one app - and
that app is almost certainly not your app.

 

The best advice is to run your app (under artificial load if needed) and use
FusionReactor or similar tools to measure performance differences as you
tune it.

 

-Cameron

 

-- 
Cameron Childress
--
p:   678.637.5072

im: cameroncf

facebook <http://www.facebook.com/cameroncf>  | twitter
<http://twitter.com/cameronc>  | google+
<https://profiles.google.com/u/0/117829379451708140985> 

 

 




-------------------------------------------------------------
To unsubscribe from this list, manage your profile @ 
http://www.acfug.org?fa=login.edituserform

For more info, see http://www.acfug.org/mailinglists
Archive @ http://www.mail-archive.com/discussion%40acfug.org/
List hosted by http://www.fusionlink.com
-------------------------------------------------------------

Reply via email to