我一直在为静态文件服务目的网站使用超级精简的 IIS 7.5 配置工作了一段时间。为了实现这一点,我简单地剥离了所有动态模块的指定网站,并且只指定了本地模块,例如StaticFileModule
、AnonymousAuthenticationModule
等HttpCompressionModule
。
事实证明,这会导致工作进程的内存占用和处理开销显着下降,并且整体性能比默认网站要好得多。
现在,作为下一步,我想看看是否可以进一步减少加载到内存中的模块数量。
我可以一个一个地删除模块并尝试查看它如何影响性能和功能,但我更愿意研究各个模块实际具有/管理的功能。
一些模块是不言自明的(即DefaultDocumentModule
,,DirectoryListingModule
),但有些不是。
有没有什么地方可以找到内置本机模块的文档?
马蒂亚斯,
您可以在此处找到 IIS 中内置的本机和托管模块的列表(模块参考部分)。本文档只会为您提供本机或实用程序模块的描述。
由于这是 IIS 的最小安装,我假设您没有安装 .NET 集成。如果这个假设是正确的,那么上面的链接应该是你所需要的,因为没有托管模块需要担心。
使用 GUI 安装 IIS 时,只需选择“静态内容”模块,您将获得以下模块:
您可以将它们减少到两个:
但我认为缓存模块是有道理的。然后,如果您错过任何功能,您可以稍后添加它们。
DefaultAppPool 设置为使用 .NET Framework
'v2.0'
,即使不支持此功能。将其更改为'No Managed Code'
.如果您只提供 GIF,PNG 和 JPG 也会删除所有其他 MIME 类型。