Caching memcache垃圾清理/清除已过期

Caching memcache垃圾清理/清除已过期,caching,memcached,Caching,Memcached,我使用memcache来存储更大的会话数据,这会限制MYSQL/PHP的限制。 然而,有一件事是,这些可能不会再次被请求,因此“惰性”memcache清除可能无法工作 我正在尝试确定是否有一个功能可以清除所有过期的缓存,而不必遍历所有缓存 或者。。。如果memcache只会消耗这么多内存,然后根据需要清除过期的内存以腾出空间 只是在寻找处理这些缓存的最佳方法 谢谢 然而,有一点是,这些可能不会再次被要求,因此 “惰性”memcache清除可能无法工作。 我正在试图确定是否有一个功能,将清除所有

我使用memcache来存储更大的会话数据,这会限制MYSQL/PHP的限制。 然而,有一件事是,这些可能不会再次被请求,因此“惰性”memcache清除可能无法工作

我正在尝试确定是否有一个功能可以清除所有过期的缓存,而不必遍历所有缓存

或者。。。如果memcache只会消耗这么多内存,然后根据需要清除过期的内存以腾出空间

只是在寻找处理这些缓存的最佳方法

谢谢

然而,有一点是,这些可能不会再次被要求,因此 “惰性”memcache清除可能无法工作。 我正在试图确定是否有一个功能,将清除所有 过期的缓存,无需遍历所有缓存

我不太清楚你这是什么意思。没有必要清除过期的东西。如果过期了,它就不算什么了。您将无法获得这些结果,因为它们不再有效(过期)

或者。。。如果memcache只会消耗这么多内存,然后清除 为腾出空间,该文件已过期

嗯,如果你有过期的项目,它们将被覆盖,所以我不知道问题是什么

假设您有空间容纳2个键/值对。如果您有一个已过期,另一个已使用但未过期,并且需要保存第三个,则可以。您实际上不需要清除任何内容,因为它将删除过期的内容

然而,有一点是,这些可能不会再次被要求,因此 “惰性”memcache清除可能无法工作。 我正在试图确定是否有一个功能,将清除所有 过期的缓存,无需遍历所有缓存

我不太清楚你这是什么意思。没有必要清除过期的东西。如果过期了,它就不算什么了。您将无法获得这些结果,因为它们不再有效(过期)

或者。。。如果memcache只会消耗这么多内存,然后清除 为腾出空间,该文件已过期

嗯,如果你有过期的项目,它们将被覆盖,所以我不知道问题是什么


假设您有空间容纳2个键/值对。如果您有一个已过期,另一个已使用但未过期,并且需要保存第三个,则可以。你不需要清除任何东西,因为它会删除过期的。

你能解释一下
阻塞MYSQL/PHP限制的原因吗。
我不太清楚这意味着什么。感谢你的后续行动——尝试向MYSQL/PHP中输入太多数据导致MYSQL/PHP会话失败——因此需要将这组数据移出。你能解释一下
阻塞MYSQL/PHP吗限制。
我不太清楚这意味着什么。感谢您的后续行动——尝试向MYSQL/PHP会话中输入太多数据会导致会话失败——因此需要将这组数据移出。Nanne——感谢您的澄清。我只是想确定这些过期的值是否存在并占用空间。底线是:如果过期,它们是免费的游戏。注意,未过期的东西也可以被清除!我真的不确定使用memcache作为会话提供程序是否是一个好主意。。它只适用于不经常使用的大型数据集,而且对于DB会话机制来说,数据太大了。我想另一种选择是将会话存储更改为基于文件的,但我想如果我们移动到elesticcache(或类似),这将允许会话信息在不考虑Web服务器的情况下可用?关于存储此会话数据的任何其他建议都会让人大吃一惊我不太确定:问题是,如果空间变小,我真的很犹豫是否将会话放入一种机制中,该机制可以删除它们,但需要预定义的内存。这感觉不对,因为您需要最坏情况下的memoryspace作为memcached的默认保留空间,这听起来有点次优。如果你达到你的最大内存,你会失去会话,这当然是不好的。会话本身不在memcache中。。只是一个日志,上面有会话的关键数据。但当然,正如您所提到的,如果memcache需要用完数据,则可能会导致数据丢失。但是这些数据只被缓存了5分钟,不管怎么说,它们都是丢弃的数据。我只是想确定这些过期的值是否存在并占用空间。底线是:如果过期,它们是免费的游戏。注意,未过期的东西也可以被清除!我真的不确定使用memcache作为会话提供程序是否是一个好主意。。它只适用于不经常使用的大型数据集,而且对于DB会话机制来说,数据太大了。我想另一种选择是将会话存储更改为基于文件的,但我想如果我们移动到elesticcache(或类似),这将允许会话信息在不考虑Web服务器的情况下可用?关于存储此会话数据的任何其他建议都会让人大吃一惊我不太确定:问题是,如果空间变小,我真的很犹豫是否将会话放入一种机制中,该机制可以删除它们,但需要预定义的内存。这感觉不对,因为您需要最坏情况下的memoryspace作为memcached的默认保留空间,这听起来有点次优。如果你达到你的最大内存,你会失去会话,这当然是不好的。会话本身不在memcache中。。只是一个日志,上面有会话的关键数据。但当然,正如您所提到的,如果memcache需要用完数据,则可能会导致数据丢失。但是这些数据只被缓存了5分钟,而且不管怎样都是丢弃的数据。