config文件解读
INCLUDES
可以引入外部配置文件,引入方式包括如下例子:
# include /path/to/local.conf
# include /path/to/other.conf
注意点:
MODULES
加载一些模块,在server启动的时候,去加载,如果失败,将终止启动服务。引入方式如下:
# loadmodule /path/to/my_module.so
# loadmodule /path/to/other_module.so
NETWORK
redis 如果没有绑定host,redis将监听链接来自于所有的在服务器上的网络接口。绑定如下:
redis默认是关闭外网访问的,只有局域网内部才可以访问。要开启外网访问,只需要修改配置文件redis.conf文件里的protected-mode从yes改为no,并把bind 127.0.0.1注释掉即可。
不指定端口,默认是6379端口。liunx链接数目,首先看一下,下面2个参数,帮助我们理解后面的分析。
tcp_max_syn_backlog是指定所能接受SYN同步包的最大客户端数量,即半连接上限。 somaxconn是指服务端所能accept即处理数据的最大客户端数量,即完成连接上限。
tcp-backlog:511
此参数确定了TCP连接中已完成队列(完成三次握手之后)的长度, 当然此值必须不大于Linux系统定义的/proc/sys/net/core/somaxconn值,默认是511,而Linux的默认参数值是128。当系统并发量大并且客户端速度缓慢的时候,可以将这二个参数一起参考设定。
建议修改为 2048
修改somaxconn
该内核参数默认值一般是128,对于负载很大的服务程序来说大大的不够。一般会将它修改为2048或者更大。
echo 2048 > /proc/sys/net/core/somaxconn 但是这样系统重启后保存不了
在/etc/sysctl.conf中添加如下
net.core.somaxconn = 2048
然后在终端中执行
sysctl -p
当客户端闲置多长时间后关闭连接,如果指定为0,表示关闭该功能
timeout 0
TCP keepalive检测,默认配置,300