错误“无法读取长值,太大了”Memcached

时间:2016-01-12 07:30:57

标签: codeigniter memcached

我在我的网站上使用Codeigniter。我已经尝试设置memcached来缓存来自数据库的对象,当它运行时我看到了这样的警告:

错误 - 2016-01-12 00:28:40 - >严重性:警告 - > Memcached :: get():无法读取长值,太大/var/www/CodeigniterProject/system/libraries/Cache/drivers/Cache_memcached.php 149

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:5)

我发现当使用Memcache扩展程序保存值然后使用Memcached扩展程序检索时会发生这种情况 - 这两者中使用的序列化之间存在不兼容性。刷新内存缓存服务器应解决问题。

答案 1 :(得分:0)

我们遇到了同样的问题。要解决它,我们已经将包从php5-memcached更改为php5-memcache。它解决了我们的问题。

答案 2 :(得分:0)

您可以尝试通过以下方式更改Memcached序列化程序:

$m->setOption(Memcached::OPT_SERIALIZER, Memcached::SERIALIZER_PHP);

(其中$ m是Memcached实例)。