缓存类型?——我所见到的缓存

和同学聊天聊到了缓存,他向我抱怨。咱们老是说缓存,可是怎么感觉什么地方都有缓存,有时就会不知道你在说哪种缓存?

我回头想想。也是我们再非常多地方都有见过缓存:

1. server端缓存

当然server端缓存作用非常多,我最常见的是缓存数据库内容,防止不断向数据库读取相同的内容,适用于读写比大于10的。


2. client缓存

也称为浏览器缓存。主要保存的是网页、图片、cookie等信息。在Internet选项中能够查看:




3. APPLET缓存

为了防止每次从server上获取Applet文件,浏览器能够利用缓存进行优化:


假设你点击键盘上的x,就会清空缓存。


4. 算法中的缓存

往往是利用空间换时间的,比方斐波拉契数列就是,如f(n)是缓存的话。在计算f(n)的时候新建。在计算完f(n+2)之后缓存失效。以此避免反复计算,减小时间复杂度。


5. 类、设计模式中的缓存

比方单例模式、多例模式中用单例或者MAP进行缓存,这样的缓存往往不会失效。

又比方Integer.valueOf()也是用到了缓存思想。

posted @ 2017-06-28 16:18  jzdwajue  阅读(129)  评论(0编辑  收藏  举报