如何解决Redis高CPU使用率问题? 以及如何限制Redis的CPU使用率?

我们inheritance了一个系统,其中有一个用于排队操作的中央服务器。 Redis被选为排队代理。

偶尔(如每2-3天)redis服务的CPU使用率甚至超过100%。

在这里输入图像说明

我试图读取日志find原因:

tail /var/log/redis/redis-server.log 

但是它返回空的结果。

在这里输入图像说明

我发现这篇文章提出了一些东西。 但是redis不能回答我的命令。

我被困在这一点上,在做什么和如何find问题。 另外,有没有办法限制redis的CPU使用量?

我也有使用redis CPU的问题。 我的情况是许多redis连接(客户端)和Linux默认ulimit 1024打开文件。

较高的CPU使用率可能是由一些CPU密集型操作(如密码)造成的。

您还可以使用SLOWLOG redis命令logging长时间运行的命令。

在没有日志和SLOWLOG结果的情况下,您可以做的最好的事情就是对redis进程进行分级,看看发生了什么。 对于我的情况是“打开的文件太多”的错误,但它只能在strace输出中看到,这是通过增加超过1024的默认文件数限制来解决的。