数据库缓存和页面缓存的使用
程序员文章站
2022-06-06 15:01:38
...
CI提供了数据库缓存和页面缓存。如果一个页面是纯静态,那么直接用页面缓存。如果一个页面包含数据库查询,是要做数据库缓存还是直接用页面缓存,似乎用页面缓存的话,数据库查询缓存等于可以没有?
回复内容:
CI提供了数据库缓存和页面缓存。如果一个页面是纯静态,那么直接用页面缓存。如果一个页面包含数据库查询,是要做数据库缓存还是直接用页面缓存,似乎用页面缓存的话,数据库查询缓存等于可以没有?
如果是内容站,门户站的首页,文章页,推荐使用页面缓存。
如果一个页面是纯静态,那么直接用页面缓存。
如何是纯静态,就不用缓存了。
如果一个页面包含数据库查询,是要做数据库缓存还是直接用页面缓存,似乎用页面缓存的话,数据库查询缓存等于可以没有?
如果是有数据库,看页面使用场景来决定使用何种缓存。如果是文章,那么页面缓存。如果是包含很多程序逻辑的系统,那么就数据库缓存。一般情况都是结合使用。
是的,页面缓存就是这个东西。
但是实际运用会遇到一些问题,比如一个大页面,有大部分数据是静态的,而某个豆腐块是实时的。这样就很尴尬。
所以,一般会采用缓存模版+缓存数据的方式。也就是,把整张页面的模版缓存起来,然后用数据缓存填充模版,一个实时豆腐块去实时取了来填充。
还有一种方式,即使实时数据用ajax处理,其他的缓存,但是不推荐这种方法,因为豆腐块在载入前是一个个空白,很丑
你可以去看下smarty的资料,基本上都是这个思路吧。有时候在性能和可维护性之间要有个权衡的。变化小的就纯静态,变化大的用模板。