memcached密钥的生存时间(TTL)可以设置为无限吗?

时间:2011-05-17 07:18:25

标签: php memcached

我已经在基于PHP-MySQL的应用程序中实现了memcache,它会定期从后端进程更新。

由于这一点,一些数据与到期时间和其他后端进程冲突,所以我提出了一个解决方案,但为此我必须使TTL =无限。

3 个答案:

答案 0 :(得分:18)

简单 - 只需在那里写0。

  

到期

     

项目的到期时间。 如果是的话   等于零,该项目永远不会   到期即可。你也可以使用Unix   时间戳或几秒钟   从当前时间开始,但在   后一种情况可以是秒数   不超过2592000(30天)。

答案 1 :(得分:4)

您可以将TTL设置为0,这意味着它应该“永不”过期。

但请记住,它永远不会是无限的。数据存储在内存中,在某些情况下会丢失,最明显的是服务器正在重新启动。 :)

当memcache失败时,您应始终可以重建该数据。

更多详细信息here

答案 2 :(得分:0)

据我所知,如果你没有设置ttl,它将永不过期。

但是,有关键的替换政策,您可以阅读here