【发布时间】:2010-09-06 05:36:39
【问题描述】:
我正在努力寻找最好的方法来加快传递构成 mvc 网站设计的静态图像。图像未压缩,也未缓存在服务器或客户端(内容过期)。选项是:
- 找出为什么不直接从 IIS6 缓存和 gzip 压缩图像
- 编写专门的 http 处理程序
- 为静态图片注册一个特殊的路由并编写一个二元actionresult方法
就性能而言,最好的解决方案是什么?
【问题讨论】:
标签: asp.net asp.net-mvc .net-2.0 gzip
我正在努力寻找最好的方法来加快传递构成 mvc 网站设计的静态图像。图像未压缩,也未缓存在服务器或客户端(内容过期)。选项是:
就性能而言,最好的解决方案是什么?
【问题讨论】:
标签: asp.net asp.net-mvc .net-2.0 gzip
最好的解决办法是让 IIS 来做。
IIS6 Compression - 很可能您需要specify file types to be compressed 喜欢 .jpg、.png、.gif 类型等。
缓存将来自确保正确的标头从代码发送到客户端,我相信您可以在 IIS 中设置一个设置来启用静态内容,但我不确定那个.
【讨论】:
在 MSDN 代码库中有一个很好的库可以做到这一点。它叫做FastMVC。
【讨论】:
gzip 压缩大多数图像的收益肯定可以忽略不计,因为它们已经被压缩了?
也许你有一些压缩得很糟糕的 PNG 文件之类的?
您可能想查看 yahoo 的性能建议网站,其中包含一些关于 optimizing images 的有用提示,包括指向实用程序的链接,例如 pngcrush。
使用图像优化实用程序 ONCE 比依赖 IIS 动态压缩它们(可能效率低下)要好得多。
【讨论】: