Tag/
共39个网摘 [
1 2 ]
下一页 |
xfu0311wxj收录,使用标签:Cache,时间:2008-4-17 11:19:05 | 相关网摘,我也收藏
Cache 即高速缓存 ,我想很多人对他的第一印象一定像我一样,感觉他一定能提高系统得性能和运行速度。的确.Net推出cache的初衷确实是这样的。那么cache是如何提高系统性能与运行速度呢?是不是在任何情况下用cache都能提高性能?是不是cache用的越多就越好呢?我在近期开发的项目中有所体会,写下来当作总结也希望能跟大家一起探讨探讨,有错误的地方希望大家批评指正。
1. Cache 是如何工作的。
l Cache 是分配在服务器上的一个公共的内存片。
所谓公共指的cache只要一创建是任何一个客户端浏览器都可以通过后台代码访问到它,它面向的是所有用户,相对而言session也是服务器上的一段内存,但他面向的是单个用户。它是服务器的一段内存块,也就是说每个cache一经创建就占用了服务器资源的。所以从这点来说我们就可以说:并不是cache越多越好。
l cache 是有时间限制的,超过了服务器设定的过期时间,它就会被服务器回收。
l c.cache 可以存放任何对象
2. Cache 如何创建以及如何销毁。
l 创建cache
在.Net环境下通过Cache.Insert(string key,object o)方法创建。其中key 代表cache的ID,o代表存到cache里的对象。
l 销毁cache.
通过方法Cache.Remove(string key)其中key 代表cache的 ID.
l 调用cache.
Cache支持装箱/拆箱操作。如你可以把一个DataSet对象ds通过Cache.Insert(“dsCache”,ds)的方式存到Cache中,可以通过拆箱操作 DataSet ds = (DataSet)Cache[“dsCache”]来访问它。
3. 什么时候用cache.
Cache 一般用于数据较固定,用的较频繁的地方。例如可以把进销存系统中可以把产品信息存入cache,在用户调用产品信息时通过调用cache即可,这样从很大程度上减少了用户与数据库的交互,提高了系统的性能。反之,cache不适合用在数据变动快,使用范围很窄的地方。例如把一个具体采购单存入 cache中。
4. cache 调用注意事项。
Cache是有时间限制的。超过了服务器设置的过期时间,就会被服务器回收。当cache被回收后对应的内存块就会被清空,再次通过cache[“cachekey”]访问对象时返回的就是null值。所以以下这种调用就会出现异常
DataSet ds = (DataSet)Cache[“cacheds”];
DataRow dr = ds.Table[0].Row[0]; //出错,ds为null值,不存在表0。
正确的写法应该是:
DataSet ds
If(Cache[“cacheds”] != null)
{
ds = (DataSet)Cache[“cacheds”];
}
Else
{
ds= GetDsFromDataBase();
}
DataRow dr = ds.Table[0].Row[0];
http://blog.csdn.net/tongdoudpj/archive/2007/09/23/1796995.aspx
http://blog.csdn.net/tongdoudpj/archive/2007/09/23/1796995.aspx
lark3收录,使用标签:OSCache, java, cache,时间:2008-1-23 12:29:53 | 相关网摘,我也收藏
Do you think that you can solve your J2EE performance problems by just adding more application servers? Why? Chances are that adding more servers will simply stress your infrastructure more, making the problem worse, not better. More queries per second is the last thing the database needs. Your database will not scale as well because of its responsibility to handle data replication and consistency across the cluster. What you may need is a caching product in order to lessen processing requirements, such as querying the database on every request. One of these caches is the Open Source product, OSCache. It may not be the best solution in all cases but, as a maintainer of OSCache, it is the one I will be reviewing.
http://www.theserverside.com/tt/articles/article.tss?l=OSCacheHelpsDatabases
zdg收录,使用标签:Performance, Cache,时间:2007-9-25 13:00:29 | 相关网摘,我也收藏
很多人首先会想从服务器缓存方面着手对程序进行优化,许多不同的服务器缓存方式都有他们自己的特点,像我曾经参与的一些项目中,根据缓存的命中率不同使用过 Com+/Enterprise Libiary Caching/Windows服务,静态文件等方式的服务器端缓存和 HTTP Compression技术,但客户端缓存往往却被人们忽略了,即使服务器的缓存让你的页面访问起来非常地快,但她依然需要依赖浏览器下载并输出,而当你加入客户端缓存时,会给你带来非常多的好处.因为她可以对站点中访问最频繁的页进行缓存充分地提高 Web 服务器的吞吐量(通常以每秒的请求数计算)以提升应用程序性能和可伸缩性。
http://blog.csdn.net/houjianxun/archive/2007/09/25/1799328.aspx
zdg收录,使用标签:搜索技术, Cache,时间:2007-1-14 2:03:55 | 相关网摘,我也收藏
三.CACHE方法性能分析与比较
(1) LRU适合存储比较小的记录效果才好。
(2) 中等大小的CACHE能够满足很大一部分重复用户查询。(大约20%的查询能够在中等大小CACHE找到)
(3) 将时间因素和命中次数结合起来的缓存策略好于只考虑时间因素的策略。实验表明FBR/LRU2/SLUR性能总是好于LRU策略。
(4) 对于小CACHE来说,静态CACHE策略要好于动态CACHE策略,命中率要高些。
(5) 对于LRU来说,大CACHE的重复命中率大约占30%。
(6) 对于大CACHE来说,TLRU略微好于LRU,但是差别不太大。对于小CACHE,结论正好相反。
(7) 随着CACHE逐步增大,命中率逐渐增加,对于SLRU来说,其性能跟两个分区划分大小无关。
(8) PDC的命中率高于LRU变形算法,大约有53%命中率,不过计算复杂度高。
http://blog.csdn.net/malefactor/archive/2007/01/12/1481364.aspx
zdg收录,使用标签:.NET开发, Cache,时间:2006-12-4 22:20:19 | 相关网摘,我也收藏
ASP.NET 2.0添加了2个非常重要的改进,使得缓存功能更加完善:
1) 对SQL缓存失效的支持 - 这允许你在缓存的页面或数据结构所依赖的数据表或记录行被更新时,使缓存内容自动失效然后重新生成缓存内容。例如,你可以在一个电子商务网站上输出缓存你所有的产品列表网页,然后确信在数据库中的产品价格一旦有所变动,这些网页就会在下一个请求时重新生成,这样就不会向用户显示过期的价格数据了。
2) 输出缓存的替换 - 这个奇妙的特性允许你实现我有时称之为“甜圈缓存(donut caching)” 的功能,在这里,你输出缓存页面上的所有东西,但除了几个包含在缓存区域内的动态区域外。这允许你更积极地实现整页输出缓存,不用为了实现局部页面缓存而把你的页面分成多个.ascx用户文件。下面这个技巧/诀窍指南更好地解释了这个特性的促动因素以及其实现。
http://blog.joycode.com/scottgu/archive/2006/11/29/88242.aspx
longrujun收录,使用标签:WP, Cache,时间:2006-11-1 14:58:21 | 相关网摘,我也收藏
WP-Cache is an extremely efficient WordPress page caching system to make your site much faster and responsive. It works by caching Worpress pages and storing them in a static file for serving future requests directly from the file rather than loading and compiling the whole PHP code and then building the page from the database. WP-Cache allows to serve hundred of times more pages per second, and to reduce the response time from several tenths of seconds to less than a millisecond.
http://mnm.uib.es/gallir/wp-cache-2/
共39个网摘 [
1 2 ]
下一页