我一直在一个静态文件服务的目的网站超级瘦IIS 7.5configuration工作了一段时间。 为了达到这个目的,我简单地将所有dynamic模块的指定网站剥离,只指定本地模块,如StaticFileModule , AnonymousAuthenticationModule , HttpCompressionModule等
这已经被certificate会导致工作进程的内存占用和处理开销显着下降,整体性能比默认网站好得多。
现在,作为下一步,我想看看是否可以进一步减less装入内存的模块数量。
我可以逐个删除模块,并尝试查看它是如何影响性能和function的,但我宁愿调查各个模块实际上具有/pipe理的function。
一些模块是不言而喻的(即DefaultDocumentModule , DirectoryListingModule ),但有些不是。
有什么地方可以find内置原生模块的文档?
马蒂亚斯,
您可以在这里find内置于IIS中的本机模块和托pipe模块的列表(“模块参考”部分)。 本文档将仅给出您对本地或实用程序模块的描述。
由于这是IIS的最小安装,我假设你没有安装.NET集成。 如果这个假设是正确的,那么上面的链接应该是你所需要的,因为没有托pipe模块需要担心。
使用GUI安装IIS时,只需select“Static Content”模块,即可获得以下模块:
<globalModules> <add name="UriCacheModule" ... /> <add name="FileCacheModule" .../> <add name="TokenCacheModule" ... /> <add name="HttpCacheModule" ... /> <add name="ProtocolSupportModule" ... /> <add name="StaticFileModule" ... /> <add name="AnonymousAuthenticationModule" ... /> </globalModules>
你可以把这些减less到两个:
<globalModules> <add name="AnonymousAuthenticationModule" ... /> <add name="StaticFileModule" ... /> </globalModules>
但我认为caching模块是有意义的。 那么如果你错过了任何function,你可以稍后添加它们。
DefaultAppPool被设置为使用.NET Framework'v2.0 'v2.0'即使不支持这一点。 将其更改为'No Managed Code' 。
如果您只提供GIF,PNG和JPG也会删除所有其他MIMEtypes。