首页 > redis > redis超时时间和连接数查询与设置
2019
04-15

redis超时时间和连接数查询与设置

redis客户端连接数

redis通过监听一个TCP端口或socket的方式接收来自客户端的连接, 当与客户端建立连接后,redis内部会进行如下操作:

(1)客户端socket会被设置为非阻塞模式,因为redis在网络时间处理上采用的是非阻塞多路复用模型;

(2)然后为这个socket设置TCP_NODELAY属性,禁用Nagle算法;

(3)然后创建一个可读的文件事件用于监听这个客户端socket的数据发送。

redis连接数与最大连接数

1.查看

方法1:在redis-cli命令行使用:info clients可以查看当前的redis连接数

> info clients
# Clients
connected_clients:5
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0

方法2:config get maxclients 可以查询redis允许的最大连接数

> config get maxclients
maxclients
10000


2.设置、修改

1. 在2.6之后版本,可以修改最大连接数配置,默认10000,可以在redis.conf配置文件中修改

maxclients 10000


2.config set maxclients num 可以设置redis允许的最大连接数

> config set maxclients 10000
OK


3.启动redis.service服务时加参数--maxclients 100000来设置最大连接数限制

redis-server --maxclients 100000 -f /etc/redis.conf


redis-cli命令控制行中获取客户端信息命令

CLIENT LIST  获取客户端列表
CLIENT SETNAME    设置当前连接点redis的名称
CLIENT GETNAME    查看当前连接的名称
CLIENT KILL ip:port    杀死指定连接  #腾讯云redis不支持

> client list
addr=10.105.3.85:43892 fd=11 name= cmd=client age=5661 idle=0 proxy=0d7a9ead32e2c44d60eef3a8d91cdab8db72fc20

> client setname test
OK
> client list
addr=10.105.3.85:43892 fd=11 name=test cmd=client age=5687 idle=0 proxy=0d7a9ead32e2c44d60eef3a8d91cdab8db72fc20

> client getname
test
> client kill 10.105.3.85:43892


4.Redis默认的timeout是0,也就是不会检测客户端的空闲

> config get timeout
timeout
0
> config set timeout 30


本文》有 0 条评论

留下一个回复