redis output buffer 设置太小导致oom

output buffer 是 redis为客户端配置的缓冲区,redis的每个连接都配有自己的缓冲区空间。

这个cliend包括

1 真正的客户端

2 slave

3 monitor

处理完请求后,redis会将响应数据复制到client的缓冲区,然后继续处理下一个请求。

如果输出缓冲区控制不好,占用过多内容,会造成系统崩溃。

对于不同的客户端来说,输出缓冲区的大小设置为:

1 真正的客户端,不设限制

2 slave,限制为256M。当缓冲区大小超过时,关闭连接。

3 Pub/Sub 客户端来说,大小限制是32m。当缓冲区大小超过时,关闭连接。

 

参考:https://cloud.tencent.com/developer/article/1082746

posted @ 2020-08-26 17:45  江湖凶险  阅读(501)  评论(0编辑  收藏  举报