redis配置之网络
简介
redis 一般都是通过网络提供服务的。
绑定监听地址
默认配置文件是绑定的127.0.0.1的地址,这个只能本机使用。
如果没有指定bind这个参数默认是监听本机的所有地址。
例如
# bind 192.168.1.100 10.0.0.1
多个地址使用空格间隔开。
unix socket
redis也可以通过unix socket提供服务,默认不指定就不开启。
unixsocket /tmp/redis.sock
unixsocketperm 700
unixsocketperm是设置socket文件的权限,根据需要设置权限即可。默认是使用系统的umask对应的设置权限。
保护模式
保护模式,是为了让redis在相对比较安全的情况下运行。
protected-mode yes
开启保护默认,就不设置密码,只能监听本地的回环地址,127.0.0.1、::1、 Unix domain Socket等本地的地址,限制只能本机访问。
需要监听其他网络地址就需要设置密码了。不建议关闭保护模式。
监听端口
默认监听端口是6379
port 6379
tcp-backlog
此参数确定了TCP连接中已完成队列(完成三次握手之后)的长度。
此值必须不大于Linux系统定义的/proc/sys/net/core/somaxconn值,默认是511,而Linux的默认参数值是128。
当系统并发量大并且客户端速度缓慢的时候,可以将这二个参数一起参考设定。
默认值 511
tcp-backlog:511
修改tcp-backlog
改somaxconn
该内核参数默认值一般是128,对于负载很大的服务程序来说大大的不够。一般会将它修改为2048或者更大。
echo 2048 > /proc/sys/net/core/somaxconn
但是这样系统重启后保存不了
在/etc/sysctl.conf中添加如下
net.core.somaxconn = 2048
然后在终端中执行
sysctl -p
再去修改redis的配置。
超时
当一个连接的客户端多久没有操作之后断开连接,0表示不超时。
timeout 0
TCP keepalive
tcp保持连接的时间,从redis3.2.1开始,默认是300s,一般建议保持默认即可。
tcp-keepalive 300
- 原文作者:Linux运维菜
- 原文链接:https://www.opcai.top/post/2020/2020-04/redis_config_network/
- 版权声明:本作品采用进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。