none
Cache是否适用于分布式存储图片? RRS feed

  • 问题

  • 近来公司一个ASP.NET项目中,有动态渲染生成的一些图片,公司要求这些图片放在另一台机器上来均衡负载,并且要求图片有一定时间的缓存。当客户请求图片时则使用Response.ContentType="image\png"及Response.BinaryWrite()方法将图片写到页面上。

    我的问题是,我在存储这些图片的时候使用Cache类,并设置其缓存时间为半个小时,代码大致如下:

            public static void AddImage(string key,MemoryStream[] value)//添加值value,添加成功后返回所在位置
            {
               
                TimeSpan ts = new TimeSpan(0, 30, 0);
                if (HttpContext.Current.Cache[key] == null)
                {
                    HttpContext.Current.Cache.Add(key, value, null, System.Web.Caching.Cache.NoAbsoluteExpiration, ts, System.Web.Caching.CacheItemPriority.Normal, null);
                }
                else
                {
                    HttpContext.Current.Cache.Insert(key, value);
                }
            }

    不知道使用这个类合适吗?还是使用别的访求更合理呢,请大家指教,感激不尽~~~


    清爽无比
    2010年7月26日 2:34

答案