CodisLabs / codis

Proxy based Redis cluster solution supporting pipeline and scaling dynamically
MIT License
13.15k stars 2.69k forks source link

请问proxy都有哪些抓慢查询的方法? #1544

Open hellwhj opened 6 years ago

hellwhj commented 6 years ago

既然proxy没有slowlog等命令,那请问有什么方式的监控可以让我排查性能问题? 我这边codis服务器出现性能抖动。 具体现象为每隔几分钟,集群的每一台proxy的tcp连接数直线飙高(2k升到5k),刚刚飙高的时刻,每一台proxy的响应时间都同时降低为1-3秒左右。 与此同时,codis server监控一切正常。最多有50ms慢查询。 首先我要弄清楚tcp连接数飙高的原因。 其次我需要proxy的慢查询监控或日志,让我知道是什么指令导致的超时。

spinlock-pony commented 6 years ago

把 slowlog 命令直接打给后面的 redis-server ?

fancy-rabbit commented 6 years ago

@spinlock 他的意思应该是后面 codis-server 的 slowlog 最多 50ms。

@hellwhj 尝试用 go1.10 编译 codis-sesrver 再试试?proxy 的 log 里在故障的时候有什么输出么 比如和 codis-server 断开了连接,或者 ncpu 变大

hellwhj commented 6 years ago

1.tcp连接数飙高有可能是一个结果,就是出现慢查询或停顿导致了一些线程存在时间更长,再加上新进来的请求的频率是没有变少的,所以总的连接数就飙高了。 2.是的,我意思是后面codis-server的slowlog最多50ms 3.proxy的log里啥也没输出。。。你说重新编译codis-server还是proxy?这个有什么作用么? 4.主要是我觉得这东西这么多人用了这么久,大神们肯定有丰富有效的排查proxy性能的手段可以代替slowlog的,大家能说一下么?