如何在PHP中实现原型缓存系统?

时间:2010-02-09 17:42:20

标签: php caching demo

问题是如何在检查缓存是否已过期时有效地执行此操作?

你能用一些非常基本的演示来解释吗?

3 个答案:

答案 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无关。缓存在您的数据发生变化时到期,例如当你添加新帖子(然后你生成新的静态文件覆盖旧帖子)。

如果需要在特定时间段内刷新缓存,则可能需要实现两级缓存模式。