Redis 4 参数解释

Redis 4 参数解释 

daemonize    
是否以后台守护的方式运行。
默认为no,需调整为yes。


tcp-backlog    
TCP三次握手后,会将接受的连接放入队列中,tcpbacklog就是队列的大小,它在Redis中的默认值是511,该值会受到操作系统的影响。
建议将Linux中somaxconn和tcp_max_syn_backlog的值调高,该参数可设置为65535。


timeout    
在客户端空闲N秒后关闭连接,默认为0,表示不启用。若短连接较多,建议设置为3600。


tcp-keepalive    
检测TCP连接活性的周期,默认值为0,也就是不进行检测,如果需要设置,建议为60,那么Redis会每隔60秒对它创建的TCP连接进行活性检测,防止大量死连接占用系统资源。


loglevel    
日志记录等级:debug、verbose、notice、warning。默认notice等级,无需调整。


logfile    
指定日志路径及名称。


save    
在一段时间内发生了一定数量的写操作,则会根据配置触发持久化。默认值如下:
save 900 1
save 300 10
save 60 10000
主库建议设置为save  ,关闭持久化


stop-writes-on-bgsave-error    
开启该参数,在启用RDB持久化的情况下,如果最新的bgsave失败,redis将会停止接受写操作。
默认开启,建议关闭。


rdbcompression    
是否在生成RDB文件时使用LZF来压缩字符串对象,开启将提高CPU消耗。若关闭可能会导致您的数据集占用内存升高。
默认开启。


rdbchecksum    
在RDB的5版本之后在RDB文件的末尾添加了一个CRC64校验和,这会提高RDB文件的抗损坏性,但是开启该参数会导致RDB在保存和读取的时候使redis的性能受到影响(大约10%);关闭该参数,会在文件末尾将校验和设为0,redis会跳过该项的检测来提高性能。
默认开启。


dbfilename    
RDB文件名,不可包含路径。
dir    工作目录,RDB文件存放在该目录下。


slave-serve-stale-data    
在从库失去与主库的连接时,从库的动作;如果为yes,从库仍然会响应客户端的请求,即便有些数据可能已经过期,或者该从库第一次连接主库,数据集仍然为为空;如果设置为no,该从库会对客户端的所有请求返回error "SYNC with master in progress",但是INFO和SLAVEOF命令仍然可用。
默认开启。


slave-read-only    
从库开启只读模式。默认开启。
建议开启避免主从数据不一致。


repl-diskless-sync    
复制同步策略;Disk-backed OR Diskless;
1.Disk-backed:redis主进程将会新建一个进程将RDB文件写到磁盘上,之后再由redis父进程增量的传送到从库。
2.Diskless:redis主进程创建一个新进程,该进程会直接将RDB通过网络写入从库的socket,不需要接触磁盘。
默认为no,即Disk-backed模式,建议使用默认值。


repl-diskless-sync-delay    
配置Diskless的情况下设置服务器的延迟等待,以便使更多的从库连接到主库进行并行复制(所有连接过来的从库都将共享一个复制缓冲区),一旦开始复制,主库就不在处理其他之后连接过来的从库请求。
默认5秒。



repl-disable-tcp-nodelay    如果选择“yes”,Redis将使用更少的TCP包和更少的带宽将数据发送给从库;但是这可能会增加从库的延迟,在使用默认配置的Linux内核中,延迟最多可达40毫秒。
如果您选择“no”,从库的延迟将会降低,但是更多的带宽将用于复制。
默认关闭。


repl-backlog-size     
设置复制缓冲区的大小。当从库与主库连接断开时,该backlog缓冲区将会存储从库未同步的数据,一遍从库再次连接到主库时不在需要全量同步,只需要部分同步即可。
该缓冲区设置的越大,容忍从库断开的时间就越长。
该缓冲区会在至少连接了一个从库时才会分配。
默认为1M,建议设置为1~2G。


repl-backlog-ttl      
当redis主库在一段时间N内不再有从库连接,那么将会把backlog释放;该值设置为0表示永不释放backlog。
默认值为3600.


slave-priority     
从库优先级,哨兵(sentinel)会根据该值选择新主,数值越低,优先级越高。
默认值为100.


min-slaves-to-write   N
min-slaves-max-lag   M    
如果连接的从服务器少于N个,延迟小于或等于M秒,那么主服务器就有可能停止接受写操作。
这两个参数设置任何一个为0即可禁用该特性。
默认不开启该特性。


maxclients       
最大连接数,默认为10000.


maxmemory    
内存最大使用限制。当redis的内存使用达到该限制时,redis将根据清除策略来删除key;如果此时redis不能删除key(比如有写操作的阻塞),或者策略被设置为noeviction,redis将会对需要更多内存的命令进行错误响应,但仍然可读。
默认不做限制。
具体应根据物理内存大小以及单机部署redis实例数量来确定,应保证服务器剩余30~40%内存空间,单实例最大不建议超过20G


maxmemory-policy    
redis的内存使用达到maxmemory的限制时,可以采取的内存清除策略。
volatile-lru:使用LRU算法删除过期键
allkeys-lru:使用LRU算法删除所有键(包括未过期的键)
volatile-random:随机删除过期键
allkeys-random:随机删除任意键
volatile-ttl:删除最近过期的键
noeviction:不删除任何键,只是在有写入请求时返回错误。
默认为noeviction。
缓存业务的场景下,建议设置为allkeys-lru/ volatile-lru/ volatile-lfu/ allkeys-lfu


appendonly    
是否开启AOF,默认为关闭。建议主节点关闭。


appendfilename    
AOF日志的文件名。


appendfsync    
AOF写入磁盘的方式。
always:每次写操作都会落盘
everysec:每秒一次落盘
no:redis不做控制,由操作系统来控制落盘,一般为30s。
默认为everysec,平衡性能与安全性。


auto-aof-rewrite-percentage
auto-aof-rewrite-min-size    
自动重写AOF文件。当aof文件增长到指定数值时,redis会自动隐式调用bgrewriteaof来重写aof文件。
默认百分比为100,大小为64mb,建议设置auto-aof-rewrite-min-size为2G。


slowlog-log-slower-than    
记录超过该值的慢查询的信息,单位是微秒。
默认值为10000,建议设置为1000。


slowlog-max-len    
记录慢日志的队列的长度。
默认为128,建议设置为1024。


client-output-buffer-limit normal    
普通客户端缓冲区限制。默认无限制。


client-output-buffer-limit slave    
主节点会为每个从节点单独建立一条连接用于命令复制,当主从节点之间网络延迟较高或主节点挂载大量从节点时,这部分内存消耗将占用很大一部分。
默认设置 256mb 64mb 60


client-output-buffer-limit pubsub    
当使用发布订阅功能时,连接客户端使用单独的输出缓冲区,当订阅服务的消息生产快于消费速度时,输出缓冲区会产生积压造成输出缓冲区空间溢出。
默认设置 32mb 8mb 60


cluster-require-full-coverage    
默认为yes,表示Redis Cluster集群中某段slot异常不可用时集群拒绝对外提供服务,建议设置为no,避免部分分片异常影响整个集群的使用。


requirepass    
配置密码,要求任何客户端在发出请求时都需要提供password。(注意:由于redis的运行速度非常快,所以需要设置一个非常强的密码)


masterauth     
当主库开启上面的参数时,从库连接主库需要通过该参数提供验证信息。


rename-command CONFIG ""    
将redis的命令重命名为其他字符串,例如将一些删库的危险操作禁用:FLUSHALL、FLUSHDB


bind     
指定redis server监听的ip,可指定多个,用空格分离。
原文地址:https://www.cnblogs.com/l10n/p/9522165.html