【发布时间】:2014-07-17 10:53:16
【问题描述】:
我想更改默认 Memcache 序列化程序 (Memcached::SERIALIZER_PHP),方法是在已包含缓存的服务器中将其替换为 Igbinary (Memcached::SERIALIZER_IGBINARY)。
如果我进行更改,我认为 Memcache 服务器会尝试使用 Igbinary 对旧缓存进行反序列化,因此会崩溃。
这个假设正确吗?是否需要执行flush_all 操作以避免错误?
【问题讨论】:
-
我不确定你想做什么,但是flush_all会通过将有效期设置为现在将所有条目标记为无效。如果这对您来说是可以接受的,那么它可能是一个解决方案。
-
我想更改序列化程序,不知道是否绝对必要执行
flush_all -
它认为没有选项可以“即时”执行此操作。但是您当然可以通过脚本更新(反序列化(旧方式)/序列化(新方式))每个条目。如果您可以接受重建缓存,flush_all 就不那么复杂了。
-
@marfis 我更喜欢使所有缓存失效,因为它更容易而且我可以假设它。谢谢!
-
好的,不客气。
标签: php serialization memcached igbinary