提高基于图像应用的性能

时间:2012-05-26 07:22:48

标签: c# asp.net performance image

我们正在开发基于产品的应用程序。其中使用了很多图像。我们希望提高应用程序的性能。我们可以使用哪些最佳实践来加快速度。

我们正在APS.net(C#)中开发此应用程序。我们可以使用Asp.net的哪些功能来加快速度。或者我们应该记住什么以使其更快。

1 个答案:

答案 0 :(得分:0)

优化网络上的图片。我首先将它分成两部分。

优化客户端

1)尽可能将像图像这样的静态媒体缓存。这是适用于IIS 7及更高版本的web.config的示例。

   <system.webServer >
        <staticContent >
            <clientCache cacheControlMaxAge ="8.00:00:00" 
                               cacheControlMode="UseMaxAge" />
        </staticContent>
    </system.webServer>

2)正确媒体的正确图像

  • 将gif用于不会降低颜色的小图像。
  • 对使用降级的图像使用jpg。
  • 仅当您通过降级获得透明时才使用png。

3)从页面到页面使用相同的图像,或尝试仅更改最小数量。

优化服务器端

1)通过在磁盘上制作真实文件来缓存图像的自动创建。因此,不要总是制作thubnails,制作一个thubnail,将其保存到磁盘并将此url提供给html页面。所有下一个请求都必须知道缩略图已准备就绪,只需提供此URL

2)改变图像质量和尺寸的参数是:

g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;

使用SaveAsJpeg函数也可以改变Jpeg的大小:

SaveAsJpeg(outputImage, TheFileNameTosaveIt, GetQualityForSave());

您可以在书本和网络上找到优化图像的其他技巧。