我们的2个网站在生产过程中使用redis服务器进行php和html缓存。我们不时会遇到一些错误:
> 22.php:2013-06-22 15:09:00 --- ERROR: +++ protocol error, got '"' as reply type byte
> 22.php:2013-06-22 15:09:00 --- ERROR: +++ protocol error, got '"' as reply type byte
> 22.php:2013-06-22 15:09:16 --- ERROR: +++ protocol error, got '<' as reply type byte
> 22.php:2013-06-22 15:09:51 --- ERROR: +++ protocol error, got '<' as reply type byte
> 22.php:2013-06-22 15:10:31 --- ERROR: +++ protocol error, got '<' as reply type byte
> 22.php:2013-06-22 15:11:22 --- ERROR: +++ protocol error, got '<' as reply type byte
如果我重新启动服务器上的apache,服务器会停止几天......然后再过3到4天就会再次回来。
我们正在使用phpredis 2.2.2和php 5.4.14,我正在使用pconnect并且php是用线程安全编译的(可能是问题)Redis服务器是2.6.12并且出于安全原因我们正在经历haproxy(使用tcp模式配置)
我想知道你是否知道为什么会这样,以及如何解决这个问题。
提前致谢
答案 0 :(得分:0)
This issue on Github看起来与你发生的情况类似。
记录收到错误时发生的Redis命令,然后验证它们是否有效。如果这只是一个无效的Redis命令的错误消息,我不会感到惊讶。
单独但相关的说明:停止使用phpredis。 Predis做同样的事情,有更好的支持和更大的用户社区。 p>
答案 1 :(得分:0)
不要使用predis,因为它对phpredis来说要慢得多。点击此处查看:http://alekseykorzun.com/post/53283070010/benchmarking-memcached-and-redis-clients