redis30的配置文档格式.docx

上传人:b****5 文档编号:16070278 上传时间:2022-11-18 格式:DOCX 页数:11 大小:23.84KB
下载 相关 举报
redis30的配置文档格式.docx_第1页
第1页 / 共11页
redis30的配置文档格式.docx_第2页
第2页 / 共11页
redis30的配置文档格式.docx_第3页
第3页 / 共11页
redis30的配置文档格式.docx_第4页
第4页 / 共11页
redis30的配置文档格式.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

redis30的配置文档格式.docx

《redis30的配置文档格式.docx》由会员分享,可在线阅读,更多相关《redis30的配置文档格式.docx(11页珍藏版)》请在冰豆网上搜索。

redis30的配置文档格式.docx

要是配置里没有指定bind和密码。

开启该参数后,redis只会本地进行访问,拒绝外部访问。

要是开启了密码和bind,可以开启。

否则最好关闭,设置为no。

protected-modeyes

#redis的进程文件

pidfile/var/run/redis/redis-server.pid

#redis监听的端口号。

port6379

#此参数确定了TCP连接中已完成队列(完成三次握手之后)的长度,当然此值必须不大于Linux系统定义的/proc/sys/net/core/somaxconn值,默认是511,而Linux的默认参数值是128。

当系统并发量大并且客户端速度缓慢的时候,可以将这二个参数一起参考设定。

该内核参数默认值一般是128,对于负载很大的服务程序来说大大的不够。

一般会将它修改为2048或者更大。

在/etc/sysctl.conf中添加:

net.core.somaxconn=2048,然后在终端中执行sysctl-p。

tcp-backlog511

#指定redis只接收来自于该IP地址的请求,如果不进行设置,那么将处理所有请求

bind127.0.0.1

#配置unixsocket来让redis支持监听本地连接。

#unixsocket/var/run/redis/redis.sock

#配置unixsocket使用文件的权限

#unixsocketperm700

#此参数为设置客户端空闲超过timeout,服务端会断开连接,为0则服务端不会主动断开连接,不能小于0。

timeout0

#tcpkeepalive参数。

如果设置不为0,就使用配置tcp的SO_KEEPALIVE值,使用keepalive有两个好处:

检测挂掉的对端。

降低中间设备出问题而导致网络看似连接却已经与对端端口的问题。

在Linux内核中,设置了keepalive,redis会定时给对端发送ack。

检测到对端关闭需要两倍的设置值。

tcp-keepalive0

#指定了服务端日志的级别。

级别包括:

debug(很多信息,方便开发、测试),verbose(许多有用的信息,但是没有debug级别信息多),notice(适当的日志级别,适合生产环境),warn(只有非常重要的信息)

loglevelnotice

#指定了记录日志的文件。

空字符串的话,日志会打印到标准输出设备。

后台运行的redis标准输出是/dev/null。

logfile/var/log/redis/redis-server.log

#是否打开记录syslog功能

#syslog-enabledno

#syslog的标识符。

#syslog-identredis

#日志的来源、设备

#syslog-facilitylocal0

#数据库的数量,默认使用的数据库是DB0。

可以通过”SELECT“命令选择一个db

databases16

################################SNAPSHOTTING################################

#快照配置

#注释掉“save”这一行配置项就可以让保存数据库功能失效

#设置sedis进行数据库镜像的频率。

#900秒(15分钟)内至少1个key值改变(则进行数据库保存--持久化)

#300秒(5分钟)内至少10个key值改变(则进行数据库保存--持久化)

#60秒(1分钟)内至少10000个key值改变(则进行数据库保存--持久化)

save9001

save30010

save6010000

#当RDB持久化出现错误后,是否依然进行继续进行工作,yes:

不能进行工作,no:

可以继续进行工作,可以通过info中的rdb_last_bgsave_status了解RDB持久化是否有错误

stop-writes-on-bgsave-erroryes

#使用压缩rdb文件,rdb文件压缩使用LZF压缩算法,yes:

压缩,但是需要一些cpu的消耗。

不压缩,需要更多的磁盘空间

rdbcompressionyes

#是否校验rdb文件。

从rdb格式的第五个版本开始,在rdb文件的末尾会带上CRC64的校验和。

这跟有利于文件的容错性,但是在保存rdb文件的时候,会有大概10%的性能损耗,所以如果你追求高性能,可以关闭该配置。

rdbchecksumyes

#rdb文件的名称

dbfilenamedump.rdb

#数据目录,数据库的写入会在这个目录。

rdb、aof文件也会写在这个目录

dir/var/lib/redis

#################################REPLICATION#################################

#复制选项,slave复制对应的master。

#slaveof<

masterip>

<

masterport>

#如果master设置了requirepass,那么slave要连上master,需要有master的密码才行。

masterauth就是用来配置master的密码,这样可以在连上master后进行认证。

#masterauth<

master-password>

#当从库同主机失去连接或者复制正在进行,从机库有两种运行方式:

1)如果slave-serve-stale-data设置为yes(默认设置),从库会继续响应客户端的请求。

2)如果slave-serve-stale-data设置为no,除去INFO和SLAVOF命令之外的任何请求都会返回一个错误”SYNCwithmasterinprogress”。

slave-serve-stale-datayes

#作为从服务器,默认情况下是只读的(yes),可以修改成NO,用于写(不建议)。

slave-read-onlyyes

#是否使用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方式。

repl-diskless-syncno

#diskless复制的延迟时间,防止设置为0。

一旦复制开始,节点不会再接收新slave的复制请求直到下一个rdb传输。

所以最好等待一段时间,等更多的slave连上来。

repl-diskless-sync-delay5

#slave根据指定的时间间隔向服务器发送ping请求。

时间间隔可以通过repl_ping_slave_period来设置,默认10秒。

#repl-ping-slave-period10

#复制连接超时时间。

master和slave都有超时时间的设置。

master检测到slave上次发送的时间超过repl-timeout,即认为slave离线,清除该slave信息。

slave检测到上次和master交互的时间超过repl-timeout,则认为master离线。

需要注意的是repl-timeout需要设置一个比repl-ping-slave-period更大的值,不然会经常检测到超时。

#repl-timeout60

#是否禁止复制tcp链接的tcpnodelay参数,可传递yes或者no。

默认是no,即使用tcpnodelay。

如果master设置了yes来禁止tcpnodelay设置,在把数据复制给slave的时候,会减少包的数量和更小的网络带宽。

但是这也可能带来数据的延迟。

默认我们推荐更小的延迟,但是在数据量传输很大的场景下,建议选择yes。

repl-disable-tcp-nodelayno

#复制缓冲区大小,这是一个环形复制缓冲区,用来保存最新复制的命令。

这样在slave离线的时候,不需要完全复制master的数据,如果可以执行部分同步,只需要把缓冲区的部分数据复制给slave,就能恢复正常复制状态。

缓冲区的大小越大,slave离线的时间可以更长,复制缓冲区只有在有slave连接的时候才分配内存。

没有slave的一段时间,内存会被释放出来,默认1m。

#repl-backlog-size5mb

#master没有slave一段时间会释放复制缓冲区的内存,repl-backlog-ttl用来设置该时间长度。

单位为秒。

#repl-backlog-ttl3600

#当master不可用,Sentinel会根据slave的优先级选举一个master。

最低的优先级的slave,当选master。

而配置成0,永远不会被选举。

slave-priority100

#redis提供了可以让master停止写入的方式,如果配置了min-slaves-to-write,健康的slave的个数小于N,mater就禁止写入。

master最少得有多少个健康的slave存活才能执行写命令。

这个配置虽然不能保证N个slave都一定能接收到master的写操作,但是能避免没有足够健康的slave的时候,master不能写入来避免数据丢失。

设置为0是关闭该功能。

#min-slaves-to-write3

#延迟小于min-slaves-max-lag秒的slave才认为是健康的slave。

#min-slaves-max-lag10

#设置1或另一个设置为0禁用这个特性。

#Settingoneortheotherto0disablesthefeature.

#Bydefaultmin-slaves-to-writeissetto0(featuredisabled)and

#min-slaves-max-lagissetto10.

##################################SECURITY###################################

#requirepass配置可以让用户使用AUTH命令来认证密码,才能使用其他命令。

这让redis可以使用在不受信任的网络中。

为了保持向后的兼

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1