we are using redis 2.6.14 with 10GB RAM as cache server and phpredis as redis client. We both write and read from one same redis server.
The problem is, when the traffic goes high, we still can connect() this machine, but ping() it will return false, yes only false. The connected_client was below 100, used_memory below 1GB, qps about 1000, which all seem fine.
We have checked almost everything we know, except what does ping() do in phpredis/redis? And on what circumstances will ping() return an error? Apprently, our machine is still connectable when ping() error. https://github.com/nicolasff/phpredis#ping
Any idea?
I've solved this problem by swithing from connect() to pconnect();