Webhosts View on IIS and Microsofts new FastCGI Module
Submitted by Dominic Ryan on Wed, 2007-02-14 11:47.
Today I am interviewing Alex Schoenmaker of SoHosted.com regarding IIS and the new Technical Preview 2 of Microsoft's forthcoming FastCGI module. Alex, can you tell us a bit about yourself and what your company does?
I'm Alex Schoenmaker, and I work as a technical engineer at SoHosted. SoHosted is a dutch webhosting company located in the north of the Netherlands. Our main business are Windows based shared webhosting. Currently we have over 10,000 active customers hosting over 17,000 domains. More than 10,000 of those domains are hosting PHP applications.The enthusiasm of Microsoft's IIS team to put time and effort into developing the FastCGI module and think outside the ASP/.NET square is really encouraging, especially with the pressures of the upcoming Windows Longhorn Server release. What are the main needs you require as a hosting provider that the Microsoft IIS platform currently does not offer?
Commandline-tools, which (as far as I know) will be available in IIS7. The main issue when growing as a webhosting provider is that you need to have the time to for fil the needs of your customer. Having to do such things manually takes a lot of time. Time you could have put in developing or researching. For example installing ISAPI filters (URL rewriters, Hotlinking prevention, etc.) is a bit of a time taker for us at this moment. Not just installing or configuring, but notifying the customer as well. We have automated many things by creating VBS scripts, but once commandline-tools will be available we can script many things into our customer panel. This will allow us to leave for filled projects behind giving the customer the ability to enable or disable features themselves, thus giving us the time to start working on new projects. Another thing we'd really like to see is IIS recovering from ASP or PHP deadlocks itself (or not deadlock at all ;)). And last but not least, being able to host PHP on Windows the way it's meant to be.What do you see being the main advantages with Microsoft's FastCGI module over the existing community developed FastCGI module for PHP?
The existing FastCGI module is, for us, really primitive. It lacks stability and tweaking, especially in a shared webhosting environment. We all know what is wrong with running PHP as ISAPI and CGI. ISAPI has the speed benefits, but lacks stability. CGI is known for it's stability, but lacks speed. FastCGI seems the right way to go. This is however, because IIS lacks stability when running as ISAPI. This has been going on for years, and I was truely amazed when I read the IIS-team was going to put effort into a new FastCGI module! For us the current community FastCGI module has several flaws. The main most important one for us is stability. On many occasions we experience php.exe to deadlock, use up to a GigaByte of memory, or use up all CPU until the process is killed. Whilst these seem PHP related errors, the FastCGI module should clean up these processes, which it doesn't. At this moment we're enforced run a scheduled (VBS) task every five minutes to check if the PHP environment is healthy or if a deadlock is present. It lacks support for common PHP server variables, such as document_root. ODBC on Access Databases fail. The amount of php.exe's resident in memory are managed per application pool (which is a bad thing). IIS however does not look at which php.exe process belongs to what application pool. PHP's environment settings are being cached when a php.exe has been spawned, instead of a realtime check (like ISAPI or CGI). The user's environment (for example timezone) depends on which php.exe your request will be parsed by. Microsoft's FastCGI module will fix all our current troubles hosting PHP. No doubt about it. We've tested Microsoft's FastCGI thoroughly and can't as of this moment say anything else than being impressed. We do however hope that impersonation issues with PHP4 will be fixed, otherwise we'll be forced to keep using the community FastCGI module for PHP4 and use Microsoft's FastCGI for PHP5.Once it is production stable, what will Microsoft's FastCGI module enable you do do for you and your customers which you previously weren't able to do?
We'll be able to look into future, instead of hassling with the past. Deliver PHP as it's ment to be, and for once and for all really get past by people still tending to choose UNIX instead of Windows based hosting for PHP.