缓存的过期检查

到目前为止我们给动态内容引入了缓存,它在一定程度上避免了动态内容不必要的重复计算,缩短了请求响应时间并提高了服务器吞吐率,但是,动态内容的目的在于提供变化的内容,所以它的缓存不可能长期有效,否则失去了动态内容的意义,所以动态内容的缓存机制必须能够判断缓存何时过期,以及核实需要生成新的缓存。

为每个缓存标记过期时间,然后动态内容每次对缓存进行过期检查,这是一种常见的缓存过期检查策略,实现方法很多在smarty中,缓存过期时间标记在什么地方呢?

  我们来对这个动态网页指定缓存有效期长度,以秒为单位,比如我们这里设置了1个小时。

$this->smarty->cache_lifetime=60*60;

 我们再回过头来看刚才的缓存文件E6C210ED%%place_posts.html,一下是文件开头的一段内容:

有意思的是,在缓存的HTML正文之前,有一长段不知所云的数据,当你用php的unserialize()方法进行反序列化处理,可以得到以下的数据结构

其中有两段是:

这两个参数一个代表的是创建文件的时间一个是缓存过期的时间,为什么要记录这两个时间呢,因为这两个参数对应的是两种检查缓存过期时间的方法

转载于:https://www.cnblogs.com/huixingwo/articles/3613284.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值