Cache的疑惑??

简介:

由于想得脑袋都痛了,所以先放首页一回会儿,让大家一起讨论一下,还请dudu见谅 
在设计Web应用程序的时候,性能可以说是最需要考虑的地方,使用cache是一个不错的选择,一直以来,我感觉Cache用来缓存小数量数据比较合适,但是今天在看Petshop的代码的时候 看到如下代码 

ExpandedBlockStart.gif      if (Cache[categoryKey]  !=   null )
InBlock.gif                
// If the data is already cached, then used the cached copy 
InBlock.gif
                products.DataSource = (IList)Cache[categoryKey]; 
ExpandedBlockStart.gif            }
else
InBlock.gif                
// If the data is not cached, then create a new products object and request the data 
InBlock.gif
                Product product = new Product(); 
InBlock.gif                IList productsByCategory 
= product.GetProductsByCategory(categoryKey); 
InBlock.gif                
// Store the results of the call in the Cache and set the time out to 12 hours 
InBlock.gif
                Cache.Add(categoryKey, productsByCategory, null, DateTime.Now.AddHours(12), Cache.NoSlidingExpiration , CacheItemPriority.High, null); 
InBlock.gif                products.DataSource 
= productsByCategory; 
ExpandedBlockEnd.gif            }
代码不难理解。petshop是吧每一个分类的产品列表列据categorykey不同全部放在了缓存中,无疑,这样做访问时不用每次都访问数据库,在性能上有很大的提高,但是我在想,在petshop的演示数据库中 只有5个分类,而且第个分类也只有为数不多的产品,如果,分类,多达上百种,每个分类里面又有近千种的产品,用这种方式是否还合适,如果 不合适的话,为什么当初这个用演示,.Net的设计思想以及性能的程序 为什么采用了这种设计方法,难道只是用来表的小数据量为前题下的性能???? 
本来 我对Cache认识还是蛮清晰的,现在 被这段代码弄糊涂了,cache到底 缓存多少数据库量比较合适。 
几十条。 
几百条。 
几千条。 
上万条。 
还是存个几百万条。 
是不是我想太多了?? 

还请大家帮我解除这个疑惑,




    本文转自无心之柳.NET博客园博客,原文链接:http://www.cnblogs.com/9527/archive/2005/03/09/115425.html,如需转载请自行联系原作者



相关文章
|
3月前
|
存储 缓存 算法
内存系列学习(四):Cache和Write Buffer一般性介绍
内存系列学习(四):Cache和Write Buffer一般性介绍
137 0
|
7月前
|
存储 缓存 Linux
入职后,我才明白什么叫Cache
入职后,我才明白什么叫Cache
|
存储 缓存
面试官:谈谈 CPU Cache 工作原理,Cache 一致性?我懵了。。(2)
面试官:谈谈 CPU Cache 工作原理,Cache 一致性?我懵了。。(2)
面试官:谈谈 CPU Cache 工作原理,Cache 一致性?我懵了。。(2)
|
存储 缓存 算法
面试官:谈谈 CPU Cache 工作原理,Cache 一致性?我懵了。。
面试官:谈谈 CPU Cache 工作原理,Cache 一致性?我懵了。。
182 0
面试官:谈谈 CPU Cache 工作原理,Cache 一致性?我懵了。。
|
存储
面试官:谈谈 CPU Cache 工作原理,Cache 一致性?我懵了。。(3)
面试官:谈谈 CPU Cache 工作原理,Cache 一致性?我懵了。。(3)
162 0
面试官:谈谈 CPU Cache 工作原理,Cache 一致性?我懵了。。(3)
|
存储 SQL 缓存
面试题:你有没有搞混查询缓存和Buffer Pool?谈谈看!
面试题:你有没有搞混查询缓存和Buffer Pool?谈谈看!
206 0
|
存储 缓存 算法
从 LRU Cache 带你看面试的本质
在讲这道题之前,我想先聊聊「技术面试究竟是在考什么」这个问题。
191 0
从 LRU Cache 带你看面试的本质
动手实现一个 LRU cache(中)
LRU 是 Least Recently Used 的简写,字面意思则是最近最少使用。 通常用于缓存的淘汰策略实现,由于缓存的内存非常宝贵,所以需要根据某种规则来剔除数据保证内存不被撑满。
|
缓存 Java
动手实现一个 LRU cache(下)
LRU 是 Least Recently Used 的简写,字面意思则是最近最少使用。 通常用于缓存的淘汰策略实现,由于缓存的内存非常宝贵,所以需要根据某种规则来剔除数据保证内存不被撑满。
|
缓存 NoSQL Redis
动手实现一个 LRU cache(上)
LRU 是 Least Recently Used 的简写,字面意思则是最近最少使用。 通常用于缓存的淘汰策略实现,由于缓存的内存非常宝贵,所以需要根据某种规则来剔除数据保证内存不被撑满。