首页  ·  知识 ·  网站开发
关于网站开发中cache应用
never-online's Blog  http://www.never-online.net/blog/article.asp?id=3    编辑:dezai  图片来源:网络
关于中大型开发b/s开发中的缓存(cache),我的一些看法,有不正确的或者是有笔误的地方,请指正。thanks首先,应该了解基本的,对于缓存的知识:
关于中大型开发b/s开发中的缓存(cache),我的一些看法,有不正确的或者是有笔误的地方,请指正。thanks

首先,应该了解基本的,对于缓存的知识:

Q:如:静态缓存和动态缓存的区别?缓存是什么?

A:缓存,在某个方面简单的说,就是无需与数据库再次交互

静态缓存: 即所说的html,shtml文件。

动态缓存:即所说的把缓存存于服务器的内存中,需要时调用。

他们的区别在哪呢--

静态缓存不用占用负载(服务器的内存),但需要占用服务器的空间(因为生成很多文件),最重要的,是因为生成了静态的缓存,而不利于维护,因为当你设计一个系统的时候,你必须考虑到用这个的后果,应该就像设计模式中所说的,有的模式是灵活的,而有的模式是一开始布署的时候就不变了的。

因此,重申一次,设计时需要小心。考虑尽可能多的东西,如:系统升级后,是否还适用(尽可能的想),是否有利于更换模板,为一些页面添加特殊的或特定的代码,用shtml还是html?等等。

而动态的cache,我想大家都应该知道动网“迷城浪子”写的用application做为cache的class了,这是asp中比较经典的用动态cache的例子。因此我也不用说太多过于application的cache了。他的优点就在于,较静态的cache利于维护和升级。以下是静态缓存与动态缓存示意图
uploads/200606/16_190323_dynamicorstatic.gif

Q: 还有其它的方式来布署吗?
A: 有。如下所示。采用Proxy的技术来设计,通过代码获得静态cache是否可用,如果可用的话,如果不可用(这里所说的不可用,即是cache不存在,或者已经改动过cache了),则重新生成输出,否则的话,直接输出。
uploads/200606/16_192213_proxycache20.gif

采用动态cache和静态cache的完整示意图,用消息通讯。简单的说明了如何应用cache的布署和应用。当然可以不用Cache Proxy来判断的,去掉cacheproxy也是一样的。

uploads/200606/16_192239_kernel.gif
本文作者:never-online's Blog 来源:http://www.never-online.net/blog/article.asp?id=3
CIO之家 www.ciozj.com 微信公众号:imciow
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读