You may be getting the idea by now that the new modular structure of IIS 7.0 is probably the most important new feature in the IIS product to date. The previous chapter demonstrated how it is possible to customize the server workload by simply plugging in and unplugging the relevant modules, thereby customizing functionality, reducing resource overheads, and improving performance.
This chapter concentrates on the underlying module system and how independent components can be seamlessly integrated into the core system to enhance or modify the functionality of the basic core system. The following topics are discussed:
An overview of module extensibility.
Basic module concepts.
An example native code module.
An example managed code module.
Event tracing from modules.
IIS configuration extensibility.
Extending the IIS Administration Tool.
The Application Programming Interface provided for developers to extend IIS is quite certainly the most powerful yet delivered by the IIS developer team. This API, in fact, is exactly the same API used by the IIS team itself to create the default modules supplied with IIS out of the box.
This means that the creators and maintainers of IIS are no longer required to wait for a major OS release or service pack, update, or patch to deliver enhanced or new functionality. Cosmetic adjustments, flaws, or security vulnerabilities alike can be addressed by simply replacing the relevant module without affecting ...