# 注意:只读slaves并不设计为了暴露给互联网上的不受信任的客户端。 它只是一个防止滥用实例的保护层。 Slaves默认情况下仍然可以导出所有管理命令,如CONFIG,DEBUG等。 在有限的程度上,您可以使用“rename-command”来提高只读从设备的安全性,以隐藏所有管理/危险命令。
#作为从服务器,默认情况下是只读的(yes),可以修改成NO,用于写(不建议
slave-read-only yes
-------------------------------------------
# Replication SYNC strategy: disk or socket. 复制同步策略: disk或socket
#
# -------------------------------------------------------
# WARNING: DISKLESS REPLICATION IS EXPERIMENTAL CURRENTLY 警告:无磁盘的复制当前还处于试验阶段。
# -------------------------------------------------------
#
# New slaves and reconnecting slaves that are not able to continue the replication
# process just receiving differences, need to do what is called a "full
# synchronization". An RDB file is transmitted from the master to the slaves.
# The transmission can happen in two different ways:
#是否使用socket方式复制数据。目前redis复制提供两种方式,disk和socket。如果新的slave连上来或者重连的slave无法部分同步,就会执行全量同步,master会生成rdb文件。有2种方式:disk方式是master创建一个新的进程把rdb文件保存到磁盘,再把磁盘上的rdb文件传递给slave。socket是master创建一个新的进程,直接把rdb文件以socket的方式发给slave。disk方式的时候,当一个rdb保存的过程中,多个slave都能共享这个rdb文件。socket的方式就的一个个slave顺序复制。在磁盘速度缓慢,网速快的情况下推荐用socket方式。
#新的slaves和重新连接的slaves,不能继续复制过程只是接收差异,需要做的就是所谓的“完全同步”。 一个RDB文件从master传输到slaves。
# 传输可以以两种不同的方式发生:
# 1) Disk-backed: The Redis master creates a new process that writes the RDB
# file on disk. Later the file is transferred by the parent
# process to the slaves incrementally.
磁盘支持:Redis master创建一个新进程,负责将RDB文件写入磁盘。 稍后,该文件由父进程以增量方式传送到slaves。
# 2) Diskless: The Redis master creates a new process that directly writes the
# RDB file to slave sockets, without touching the disk at all.
#无盘:Redis master创建一个新的进程,直接将RDB文件写入slaves sockets,而不触及磁盘。
# With disk-backed replication, while the RDB file is generated, more slaves
# can be queued and served with the RDB file as soon as the current child producing
# the RDB file finishes its work. With diskless replication instead once
# the transfer starts, new slaves arriving will be queued and a new transfer
# will start when the current one terminates.
#使用"磁盘支持"的复制,在生成RDB文件时,只要生成RDB文件,当前子进程就完成了它的工作,更多的slaves就可以排队并被提供这一份RDB文件。(可同时提供给多个slaves)
# 使用无盘复制,一旦传输开始,新slaves到达将排队,并且当当前的一个终止时,新的传输将开始。(顺序复制,一个接一个)
# When diskless replication is used, the master waits a configurable amount of
# time (in seconds) before starting the transfer in the hope that multiple slaves
# will arrive and the transfer can be parallelized.
#当使用“无盘复制”时,master在开始传输之前等待可配置的时间量(以秒为单位),希望多个slaves将到达并且传输可以并行化。
#
# With slow disks and fast (large bandwidth) networks, diskless replication
# works better. 使用慢磁盘和快速(大带宽)网络,无盘复制工作更好(建议socket)
repl-diskless-sync no
# When diskless replication is enabled, it is possible to configure the delay
# the server waits in order to spawn the child that transfers the RDB via socket
# to the slaves.