MTS07 - IIS7

IIS7 guys look like they’ve taken a few notes out of the Apache book. It’s much easier to do a lightweight IIS7 install due to a bunch of modularity they’ve introduced.

This is the first talk that they’ve shown some code. One of the devs is going to be creating an IIS7 module. 40 lines of C# code is all it took. Interesting. There is overhead in the loading of the “Managed Modules” as opposed to their “Native” ones which are C/C++.

All of the configs are logs are XML. Through configs you can swap out modules, lock your settings, etc. The UI for admin is still in place, but the config behind it works on XML. Carlos: “Inet Manager is just the fanciest XML editor ever.”

They’ve added the equivalent of environment variables in to IIS7. Makes storing variables inside a config file easier. It supports encryption via a command line tool ‘appcmd’.

Straight CGI mode gets 24/reqs per second on Qdig. Using FastCGI he’s getting 58 to 59/reqs per second.

They have internal caching for PHP that’ll detect file changes and cache results - it got 7942 straight away and 86xx on the second reload. Wow… That’s like serving static HTML. When we get to the Q&A - I’ll ask about the baseline for static content.

They have a much better user authentication system, but it didn’t work. He got all the way through it, but it wouldn’t take his password. :-)

As the whole inetmngr code is built upon schemas and XML and can be expanded with .NET code. It actually reminds me a lot of XUL overlays. The whole configuration is done via HTTPS, so you can use the GUI for remote management.

Currently, it’s only available on Vista and will be on Longhorn, but isn’t going to be available for older (i.e., Win2003) servers.

About the caching - you can use kernel mode caching and get roughly the same throughput. Definitely interesting for things such as dynamic CSS and JS generated in PHP. Sounds similar to the Zend Platform caching.

Bill’s email is bills@ and Carlo’s is carlosag@