非过期缓存

时间:2013-04-02 15:06:40

标签: php caching

我正在用PHP开发一个电子商务系统。我总是希望向客户显示更新的数据,但是需要内存缓存。 我正在计算是否有共同的非过期缓存,并在更新数据时删除缓存。或者那是不好的做法?

1 个答案:

答案 0 :(得分:0)

我在一个相当高的交易拍卖网站上工作,我们不得不做很多缓存来保持网站。

我们使用了两种缓存失效:

有效

对于任何变化很快的事情,我们会使用主动失效。对我们来说,这是出价/在任何特定时刻的物品成本。我们会无限期地缓存这些信息,当有人竞标时,我们会主动清除缓存。

尽管我们将主动清洗保持在绝对最低限度。

此外,您还要确保是否主动清除缓存对象...确保它只存在于一个位置。尝试为所有实例搜索缓存并在任何地方更改它们都太痛苦了。

<强>被动

这是您为对象提供生存时间(TTL)并让它自己正常过期的地方。将它用于可能有点陈旧的东西。

我们对95%的数据采用了这种方法,效果很好。

与主动失效不同,编程也很容易。


对于主动和被动缓存失效......我不会说这两种情况都不好。