首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >消除memcached的30天限制

消除memcached的30天限制
EN

Stack Overflow用户
提问于 2010-09-03 00:08:44
回答 2查看 3.5K关注 0票数 6

为什么memcached对缓存项的生命周期有30天的限制?

在我的系统中,我总是将生存期设置为30天,因为这是允许的最大值。对于我的应用程序来说,将其设置为远大于30天的值将是理想的。

有没有办法将“30天”的值更改为其他值?

我正在考虑下载memcached源代码并重新编译,以供我自己使用。我要么把"30“改成"300”,要么干脆去掉那张支票。如果我这样做,我是否会更改一些会导致memcached出现故障或性能不佳的内容?我的期望是,项目将被允许在缓存中保留更长时间,当缓存变满时,这些项目将从缓存中删除。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-09-03 00:15:21

30天是您可以指定过期的最大时间长度,但是如果您正在考虑完全取消过期检查,将过期时间设置为0不是更简单吗?这应该意味着数据将一直存储到缓存已满,并将其删除以允许插入较新的项。

PHP Memcache docs

参数expire是过期时间,单位为秒。如果为0,则该项永远不会过期(但memcached服务器不能保证该项始终存储,可以将其从缓存中删除,以便为其他项腾出位置)。

票数 8
EN

Stack Overflow用户

发布于 2010-09-03 03:01:14

30天是我们从现在起将您指定的时间视为TTL的限制。

如果您想要超过30天,可以使用绝对时间(time() + whatever)。

如果您不想像ConroyP所说的那样基于时间的过期,那么只需使用0

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3628995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档