OK,

Sorry I was delayed, damn timezones!  OK, it looks as though you have a
fairly beefy machine...A few things you can do here (and these are never
documents by MM as they are no doubt out of scope of CF!)

I would remove the -XX:+UseConcMarkSweepGC from your arguments and replace
it with -XX:+UseParallelGC.  If you have a 4 processor box then you going to
suffer some performance problems with a ConcMarkSweep.

Your Heap size looks scarily low - if its too low you will begin to get a
lot of GC's happening.  For a 2GB box IO would set the heap to 1GB for Min
and Max.  One thing to note is that there is no ideal setting for the heap -
it is entirely based on how much memory your application uses - and each
application is different.  If you have not already I suggest you go and run
the Sun VisualGC application which is part of the JVMStat tool.  

http://java.sun.com/performance/jvmstat/

Your symptoms all point to the fact that your app is a memory hogger -
probably due to largish queries (as MX uses around 4x more memory for a
query than CF5 does) or indeed just extensive use of compels procedures.

I would redefined the following values (settings inline) -XX:MaxPermSize=64m
-XX:PermSize=48m -XX:NewSize=256m

As for your XML settings - there a few things you can do.  First off, what
is your Simultaneous connections set to?  Within your proxy service the
activeHandlerThreads setting should be the same as your Simultaneous
connections value.  And within your Scheduler service (this is sometimes
totally missing in CFMX) you should have 

<service class="jrunx.scheduler.SchedulerService" name="SchedulerService"> 
        <attribute name="bindToJNDI">true</attribute> 
        <attribute name="activeHandlerThreads">20</attribute> 
        <attribute name="maxHandlerThreads">1000</attribute> 
        <attribute name="minHandlerThreads">20</attribute> 
        <attribute name="threadWaitTimeout">60</attribute> 
        <attribute name="timeout">300</attribute> 
</service>

Where min and activehandler threads are equal to the value set in
simultaneous threads.

Also consider that it is IIS which is causing the slowdown.  We have had
some serious issues with IIS5 which has the IIS Lockdown tool applied.
Sometimes it would just hang the server - CF would look to be serving pages
OK and the IIS service is running but not pages get served....the only way
to get them back (not always succcessful) is to perform an IISReset from the
command line.   What to do is go download IISState tool here: 

http://www.iisfaq.com/Default.aspx?tabid=2513

When you are getting slow//blocked pages then run this and it will generate
a log which you can then review to see if any IIS processes are blocking CF.
You can also post it to the Microsoft Newsgroup to get an MVP input.

I see you are using large query sets.  Are you running these via CFQUERY or
in an SP?  I would suggest that any of these large result sets are set to be
dirty reads in order to stop blocking/locks.

You may also want to consider creating separate CF Datasource connections
(to the same Database) for different processes - i.e. if you have a report
which runs ad-hoc and takes time you can increase performance and speed by
running this in its own connection pool.

Let me know how you get on, if you need to contact me offline you can via
MSN...let me know if you want it offline.

N









-----Original Message-----
From: Douglas Knudsen [mailto:[EMAIL PROTECTED] 
Sent: 28 February 2005 21:04
To: CF-Server
Subject: Re: memory use and CF

thankyou Neil!  

We are using win2K Server, IIS5, CFMX6.1 UPD 1, 4 Xeon P4s, and 2GB of RAM
We use Oracle 9i and we use the JDBC drivers that come with CF
I have this as teh JVM settings, 
java.args=-server -Xms640m -Xmx640m -Dsun.io.useCanonCaches=false
-Xbootclasspath/a:"{application.home}/servers/cfusion/cfusion-ear/cfusion-wa
r/WEB-INF/cfusion/lib/webchartsJava2D.jar"
-XX:MaxPermSize=128m -XX:PermSize=64m -XX:+UseConcMarkSweepGC
-XX:NewSize=48m  -DJINTEGRA_NATIVE_MODE -DJINTEGRA_PREFETCH_ENUMS


I have metrics logging on, here is a sample
DateTime,,listenTh,delayTh,idleTh,busyTh,totalTh,delayRq,droppedRq,delayMs,T
otalMem,FreeMem,J2EESessions
02/28 08:51:11,metrics ,2,0,7,4,13,0,0,0,655296,499693,1
02/28 08:51:43,metrics ,2,0,9,2,13,0,0,0,655296,541514,1
02/28 08:52:13,metrics ,2,0,11,0,13,0,0,0,655296,511963,1
02/28 08:52:45,metrics ,11,0,5,2,18,0,0,0,655296,571183,1
When the server hangs, the metrics are similar, no indication of
nastiness at all

have some logging of GCs on, a sample here
02/28 15:35:36,debug MM GC collected 0 messages, 0 remaining.
02/28 15:43:36,debug MM GC collected 0 messages, 0 remaining.
02/28 15:51:36,debug MM GC collected 0 messages, 0 remaining.

We have disabled 'maintain connections' for all DSNs thinking its
related to JDBC stuffs.

relevant jrun.xml settings
<service class="jrun.servlet.jrpp.JRunProxyService" name="ProxyService">
    <attribute name="activeHandlerThreads">25</attribute>
    <attribute name="backlog">500</attribute>
    <attribute name="deactivated">false</attribute>
    <attribute name="interface">*</attribute>
    <attribute name="maxHandlerThreads">1000</attribute>
    <attribute name="minHandlerThreads">20</attribute>
    <attribute name="port">51002</attribute>
    <attribute name="threadWaitTimeout">180</attribute>
    <attribute name="timeout">300</attribute>
considering teh metrics logging, there does not appear anything wrong
with these.

At this poitn, the only thing I can see to do is stack/thread traces. 
But time constraints, I'm supposed to be developing!, are leading us
to think of a schedule restart of the cf instance.

We have one app that continually gets page request times in the 15 to
20 second range, but the metrics logging seems ok with that.  We are
planning on moving it to its own instance, thinking its the problem
child.

hope this helps some.

Doug



On Mon, 28 Feb 2005 19:59:01 -0000, Robertson-Ravo, Neil (RX)
<[EMAIL PROTECTED]> wrote:
> Sorry, coming in latee on this one...what are your Java settings (Heap
Size,
> Perm Size, New etc..).  What are the specs of your server?  This looks
like
> a GC issue.
> 
> Have you ran any extensive monitoring?  What SQL backend do you have? What
> drivers?
> 
> I can help you on this issue as I have had 6-8 months of memory/cf
debugging
> under my belt - believe me, I have tweaked and set thousands of values for
a
> decent performance setup.
> 
> Give me as much info as you can on settings/configs etc..and we can
> hopefully resolve this.
> 
> Neil
> Member of TMM CF
> 
> 
> -----Original Message-----
> From: Douglas Knudsen
> To: CF-Server
> Sent: 28/02/2005 19:10
> Subject: Re: memory use and CF
> 
> thinking about this....we do use CFLDAP for all authentication.  I
> have read somewhere that this tag can be an issue.  Anyone experience
> this?
> 
> On Mon, 28 Feb 2005 13:20:27 -0500, Douglas Knudsen
> <[EMAIL PROTECTED]> wrote:
> > nope, debugging is off in our production environments, something I
> > speak LOUDLY about amongst my team.  Thanks for the input.
> >
> >
> > On Mon, 28 Feb 2005 10:06:26 -0800, Cameron Childress
> > <[EMAIL PROTECTED]> wrote:
> > > I've seen several reports lately that leaving Debugging turned on
> will
> > > also cause memory leaks in CF.  Is it turned on on these boxes?
> > >
> > > -Cameron
> > >
> > > On Mon, 28 Feb 2005 08:42:08 -0500, Douglas Knudsen
> > > <[EMAIL PROTECTED]> wrote:
> > > > Running CFMX6.1 UPD1 on JRun with J2EE install.
> > > > What is the difference between memory use as seen in Windows Task
> > > > Manager and memory use in the metrics logging via JRun?  I got the
> JVM
> > > > memory set to 640m in the jvm.config file.  According to metrics
> > > > logging I see many entries like
> > > >
> > > > TotalMem,FreeMem
> > > > 655296,545928
> > > >
> > > > with the FreeMem rarely less than 400000.
> > > >
> > > > At the same time I see that according to task manager, the jrun
> > > > instance is using about 750,000k.  This figure slowy climbs from
> about
> > > > 350,000k when the JRun service is started.  When it reachs a bit
> over
> > > > 800,000k the server starts to hang.
> > > >
> > > > Any thoughts?
> > > >
> > > > --
> > > > Douglas Knudsen
> > > > http://www.cubicleman.com
> > > > this is my signature, like it?
> > > >
> > > >
> > >
> > >
> 
> 



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Discover CFTicket - The leading ColdFusion Help Desk and Trouble 
Ticket application

http://www.houseoffusion.com/banners/view.cfm?bannerid=48

Message: http://www.houseoffusion.com/lists.cfm/link=i:10:5187
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/10
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:10
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.10
Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

Reply via email to