都说smarty + memcache配合用是很好的优化组合,但我不明白为什么用了smarty还要用memcache~
因为smarty不是有页面缓存吗,比如现在有个页面A,我规定它缓存的时间是10分钟,那它只要每十分钟逻辑运算一次就可以了。还要memcache有什么用呢?能给我举个小例子说明smarty和memcache在什么情况下配合使用吗?谢谢各位!
因为smarty不是有页面缓存吗,比如现在有个页面A,我规定它缓存的时间是10分钟,那它只要每十分钟逻辑运算一次就可以了。还要memcache有什么用呢?能给我举个小例子说明smarty和memcache在什么情况下配合使用吗?谢谢各位!
这个我知道啊。。
你的一色就是说:memcache比smarty静态缓存要快,对吗?
那我就将这个页面设置成5分钟静态缓存更新一次。比如这种情况,那用不用memcache不是一样的吗?
smarty不是有一个判断当前页面是否缓存了的函数吗:is_cached()
用它判断一下,如果已经有缓存了且没过期,就不用查数据库了啊,直接读静态文件了。
访问文件肯定要比访问内存要慢
所以才有 smarty + memcache 一说
也就是说可以修改 smarty 将 cache 放到 memcache 中去至于用什么,怎么用,那都是方案问题。与实现技术无关
但是,我现在最困惑的就是不知道在什么情况下两者可以配合用,就比如我刚才说的那个例子:有一个页面,要求每5分钟刷新一次,其中有三条从数据库获取的结果集。
我将这个页面用smarty设置静态缓存,且缓存周期是5分钟。
然后用smarty的is_cached()方法判断是否有缓存且未过期,如果条件成立,就可以直接读取静态文件,反之则重新获取值。那像这种情况,即便用memcache保存这三条结果集,是不是也没什么效果了?
那什么情况两者能配合着用呢?我只是想知道一个小例子。
谢谢大家!