Hi Ian (again), I've been thinking about it more and recall seeing some support cases recently that used ColdFusion. As I recall, in Windows 2003, CF works very similarly to ASP.NET in that an ISAPI extension module is invoked by any call to a page with the correct file extension (.cfm). This lets the w3wp.exe process know to execute the JRUN.dll module and pass the script into it. The jvm.dll is also loaded into the same process and all of these things churn around in there until a finished product is delivered by the w3wp.exe. What all of this means is that any variables which and not kept in a separate db or other place are loaded into the w3wp.exe process. If this process is somehow corrupted (the crashes, hangs and OOM errors I previously mentioned) then you will lose all of these variables (typically scope and application, and any currently running page vars). Therefore, in order to protect your applications, you should absolutely divide them into separate application pools. However, only a few application pools are needed. One per app is too many, all in the same app pool provides no app isolation. Since each application pool has to load it's own instance of the JRUN and JVM dlls, you can optimize both isolation and memory utilization by configuring approximately 10 sites per app pool. If any site is especially hard hit and/or is especially sensitive, give it its own app pool. Incidentally, this article by Dave Watts himself, describing CF6.1, which I assume has the same general architecture as CF8 in application to IIS 6.0, does show that my assumptions and recommendations are correct:
"You have more control over ISAPI application isolation as well-you can create your own application pools directly, and place each virtual server or directory within the application pool of your choice. This allows you to keep one ISAPI application from bringing down the whole server." http://www.adobe.com/devnet/coldfusion/articles/windows_2003.html. The default application pool identity is NETWORK_SERVICE. This is the "low privileged account" that Dave is referring to. I recommend that you don't change it unless you have a need to do things like allow the user to access resources on a remote share and then you set it to a domain account. Let me know if you have any other questions. - Matt ----- Original Message ----- From: "Chesty Puller" <[EMAIL PROTECTED]> To: "CF-Community" <cf-community@houseoffusion.com> Sent: Wednesday, October 31, 2007 10:31 PM Subject: Re: For ChestyPuller > Hi Ian, > Sorry for the late response. > I'm not terribly familiar with how CF runs on IIS. I read Dave Watts > response but I don't understand it all. I have no idea what Dave means by > the "Web Server Intregration Module" > I do know that *all* websites are running in the application pool, but > I > am not sure where CF does it's processing. If it's an ISAPI application, > then it does indeed run in the w3wp process and sorting all of these > applications into separate app pools will provide a lot of application > isolation. I hear a lot about the JVM, but I just don't know where > exactly > the processing gets done or how the request makes it from the inetinfo.exe > process into the JVM. > I think in any case, it will not hurt to sort about 10 applications > into > an app pool. If you have an especially heavy-hit site, get it into its > own > app pool. What happens is that any problems which can cause crashes (high > memory utilization, unhandled exceptions, hangs) will be isolated into the > w3wp.exe processes which are handling it. > I hope this helps. Does anyone know more about how the process reaches > from IIS to the JVM? Let me know, I'm interested. > > - Matt > > > > ----- Original Message ----- > From: "Ian Skinner" <[EMAIL PROTECTED]> > To: "CF-Community" <cf-community@houseoffusion.com> > Sent: Wednesday, October 31, 2007 5:23 PM > Subject: For ChestyPuller > > >> AKA Matt S. >> >> I do not know if you still participate in CF-Talk. If not I posted a >> question there that you would probably be a good source of information. >> >> http://www.houseoffusion.com/groups/cf-talk/thread.cfm/threadid:54097#292444 >> >> >> >> > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Get involved in the latest ColdFusion discussions, product development sharing, and articles on the Adobe Labs wiki. http://labs/adobe.com/wiki/index.php/ColdFusion_8 Archive: http://www.houseoffusion.com/groups/CF-Community/message.cfm/messageid:245569 Subscription: http://www.houseoffusion.com/groups/CF-Community/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.5