Redis配置文件里有这样的配置
# client-output-buffer-limit <class> <hard limit> <soft limit> <soft seconds>
#
# A client is immediately disconnected once the hard limit is reached, or if
# the soft limit is reached and remains reached for the specified number of
# seconds (continuously).
# So for instance if the hard limit is 32 megabytes and the soft limit is
# 16 megabytes / 10 seconds, the client will get disconnected immediately
# if the size of the output buffers reach 32 megabytes, but will also get
# disconnected if the client reaches 16 megabytes and continuously overcomes
# the limit for 10 seconds.
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
1) normal => normal clients;
2) slave clients and MONITOR clients;
3) pubsub => clients subcribed to at least one pubsub channel or pattern
该缓冲区有两个指标,硬指标和软指标,硬指标是256MB,也就说在执行主从全量同步期间,也就是传RDB期间,主的复制输出缓冲区超过了256MB,就会导致从断链,然后从需要重新连接。
软性指标是持续60s该缓冲区都超过64MB,也会导致主会主动将从断链,然后从重新连接重新执行全量复制