What version of CFMX? Stace
-----Original Message----- From: Alan Ford [mailto:[EMAIL PROTECTED] Sent: Friday, August 08, 2003 8:44 AM To: CF-Talk Subject: CFMX performance issue I've been an avid reader of this and other lists for ages, but this is the first time I've needed to ask something. A client has been having awful problems handling high loads. What happens is that out of the blue CFMX (which has been happily servicing the same level of load with c5 running requests) climbs up to maximum running requests (set to 96 on a quad processor) and then starts queuing requests. Things go dire for a while (sql response times increase, bytes output decreases, request response time obviously increases). Usually it will recover, in anything from 5 seconds to a minute and go back to normal. 99.9% of the time things are fine; it copes with the load with no problems. Maybe 5 times an hour we have a brief bottleneck (10 seconds or so, which clears before it starts queuing requests) and maybe 2 or 3 times a day we max out the running requests and start queuing. Sometimes I have to limit the number of connections, briefly, with IIS to get it to recover. It's an ecommerce site so we can't afford these overloads. What have we eliminated? Most things. 96 running requests is our best number after trial and error. It does allow cf running requests to climb, but not queue most of the time. It was set to 20 - but 96 means we get a lot fewer overloads and works best for us. We did have similar problems with CF 5, but never often enough to be worth investigating. CFMX was initially fine, but the site load has recently gone up by 30% or more. SQL is fine - we have loads of query caching, query of queries - sql response times are fine, < 20ms. I've fine tuned the app, hardware, os, network, IIS - the lot. Overloads happen, but a lot less often than they did before at the same load. Because of the way we have to talk to a legacy system there's an awfully high amount of disk i/o - creating / checking if the reply file exists / reading / deleting some 100,000 files a day. The create / read / delete calls are all cflocked. It's a single server system, with MS SQL server on a separate box. Win 2k server / IIS 5. Application and session variables are used but I believe they are locked adequately (writes are locked, app reads are locked, session reads are not). For the past 3 days I've been trying to catch an overload situation so that I could do a thread dump, but the first successful dump I got wasn't until today. The dump shows that when the site is overloaded the vast majority of running threads are in this state - "jrpp-1068" prio=5 tid=0x256dca90 nid=0x1b40 waiting on monitor [0x2ac4f000..0x2ac4fdb8] at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at coldfusion.util.AbstractCache.fetch(Unknown Source) at coldfusion.util.SoftCache.get(Unknown Source) at coldfusion.runtime.TemplateClassLoader.findClass(Unknown Source) at coldfusion.runtime.RuntimeServiceImpl.checkExists(Unknown Source) at coldfusion.runtime.RuntimeServiceImpl.resolveTemplatePath(Unknown Source) at coldfusion.runtime.TemplateProxy.resolveFullName(Unknown Source) at coldfusion.runtime.TemplateProxy.resolveName(Unknown Source) at coldfusion.runtime.CFPage.CreateObject(Unknown Source) at coldfusion.tagext.lang.ObjectTag.doStartTag(Unknown Source) at coldfusion.runtime.CfJspPage._emptyTag(Unknown Source) at cfenq2ecfm1767146982.runPage(E:\www\xx\xxx\enj.cfm:21) etc Line 21 of that module is the line after a <cfobject> call to load a cfc. The module referenced varies but the line referenced either points to the line after a cfc cfobject call, or points to a custom tag call. I gave up analysing the dump in detail about half way through, but by that time I'd found 37 threads all in the same wait state. Only a very few active threads were apparently actually running - doing something - 4 in fact. To me this indicates some sort of bottleneck in handling the template cache. But what sort of bottleneck, and how do I cure it? Regards, Alan Ford ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4 Subscription: http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribe&forumid=4 FAQ: http://www.thenetprofits.co.uk/coldfusion/faq Get the mailserver that powers this list at http://www.coolfusion.com Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4