Redis客户端连接,最大连接数查询与设置

1、redis客户端连接数

redis通过监听一个TCP端口或socket的方式接收来自客户端的连接,
 当与客户端建立连接后,redis内部会进行如下操作:
(1)客户端socket会被设置为非阻塞模式,因为redis在网络时间处理上采用的是非阻塞多路复用模型;
(2)然后为这个socket设置TCP_NODELAY属性,禁用Nagle算法;
(3)然后创建一个可读的文件事件用于监听这个客户端socket的数据发送。

2、redis连接数与最大连接数

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

127.0.0.1:6379> info clients
#Clients
connected_clients:621
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
127.0.0.1:6379>


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

127.0.0.1:6379> CONFIG GET maxclients
    ##1) "maxclients"
    ##2) "5000"
127.0.0.1:6379>

3、修改配置

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

...
# maxclients 10000
...

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

127.0.0.1:6379> CONFIG set maxclients 10
OK
127.0.0.1:6379>


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   杀死指定连接

127.0.0.1:6379> CLIENT LIST
id=24097 addr=192.168.20.119:41339 fd=6 name= age=2068 idle=269 flags=N db=3 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=hget
id=26096 addr=192.168.20.120:60299 fd=5 name= age=867 idle=269 flags=N db=3 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=hget
id=28095 addr=127.0.0.1:35483 fd=7 name= age=0 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=32768 obl=0 oll=0 omem=0 events=r cmd=client
127.0.0.1:6379>  
posted @ 2019-04-30 15:46  caoss  阅读(7155)  评论(0编辑  收藏  举报