3

I've been working for some time at a super lean IIS 7.5 configuration for a static file serving purposes web site. To achieve this, I've simply stripped the designated web site for all dynamic modules, and only specified native modules such as the StaticFileModule, AnonymousAuthenticationModule, HttpCompressionModule etc.

This has already proved to cause a significant decline in the memory footprint and processing overhead for the worker process, and the overall performance is much better than the default web site.

Now, as a next step, I would like to see if I can trim down the number of modules loaded into memory even further.
I could just remove the modules one-by-one and try to see how it affects performance and functionality, but I would rather investigate what the functionality the individual modules actually has/governs.

Some of the modules are pretty self-explanatory (ie. DefaultDocumentModule, DirectoryListingModule), but some are not.

Is there anywhere I can find the documentation for the builtin native modules?

2 Answers 2

4
+150

Mathias,

You can find a list of both native and managed modules that are built into IIS here (Module Reference section). This documentation will only give you descriptions for the native, or utility, modules.

Since this is a minimal installation of IIS I am assuming you are not installing .NET integration. If this assumption is correct, then the above link should be all you need as there will be no managed modules to worry about.

2
  • 5
    O! M! F! G! - I have browsed that article for various purposes more than a hundred times the last few years, and I've never taken notice of the fact that the entire bottom 60% is a module f'ing reference o_O thanks a bunch Sep 6, 2013 at 16:46
  • btw; It's not a minimal install, but as hinted in the question I've unlocked all modules at the server level, removed them at the web site configuration level and specified only the native modules - so a minimal web site on a full-fledged IIS installation Sep 6, 2013 at 17:00
0

When using the GUI to install IIS, and just selecting the 'Static Content' module, you get the following modules:

<globalModules>
    <add name="UriCacheModule" ... />
    <add name="FileCacheModule" .../>
    <add name="TokenCacheModule" ... />
    <add name="HttpCacheModule" ... />
    <add name="ProtocolSupportModule" ... />
    <add name="StaticFileModule" ... />
    <add name="AnonymousAuthenticationModule" ... />
</globalModules>

You can cut these down to just two:

<globalModules>
    <add name="AnonymousAuthenticationModule" ... />
    <add name="StaticFileModule" ... />
</globalModules>

but I think the cache modules make sense. Then if you miss any features you can add them later.

The DefaultAppPool is set to use .NET Framework 'v2.0' even though there is no support for this. Change it to 'No Managed Code'.

If you only serve GIFs, PNGs and JPGs also remove all other MIME types.

1
  • Hi Peter, thanks for your input but I got so far already - all I want is a reliable source of documentation for the individual modules :-) Sep 6, 2013 at 13:46

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .