问题是如何在检查缓存是否已过期时有效地执行此操作?
你能用一些非常基本的演示来解释吗?
答案 0 :(得分:0)
缓存数据的方法有很多种。您可以将它们存储在ram,光盘等中。我已经编写了自己的自定义解决方案,它使用memcache / apc / filesystem,具体取决于我对任务的需求,因为我找不到符合我要求的解决方案。您可以使用PEAR_CacheLite和&amp ;;查看一些缓存示例。 Zend_Cache。就像提到的hobodave一样,apc确实有一种非常简单的方法,只需用ttl将数据放入缓存中,但根据你的应用程序,这可能不实用。其中每一个都有一些问题,所以买家要小心。
答案 1 :(得分:0)
代码示例:检查缓存是否已过期
DEFINE('time_to_live',60);
class MyCacheManager {
function load(key) {
if(filemtime(/data/cache/key.dat) > time_to_live) {
//expired!
}
}
}//CLASS
答案 2 :(得分:0)
这取决于具体情况。
最好的方法是生成静态数据,并直接提供,例如通过.htaccess
中的重定向,所以php无关。缓存在您的数据发生变化时到期,例如当你添加新帖子(然后你生成新的静态文件覆盖旧帖子)。
如果需要在特定时间段内刷新缓存,则可能需要实现两级缓存模式。