在使用 redis 时候经常会出现连接过多,导致其他程序在连接时连接不上,产生了道路拥堵现象,虽然在程序中有做执行完任务后自动关闭连接的操作,但难免会有漏网之鱼的出现,为避免这种现象的出现还有一种防御的方法,就在 redis 自身进行空闲连接的自动释放的处理,将较长时间处于空闲状态的连接关闭掉。
查看redis客户端连接
redis-cli info clients # Clients connected_clients:6000 client_longest_output_list:0 client_biggest_input_buf:5792 blocked_clients:0
查看redis 客户端状态
redis-cli client list
addr=127.0.0.1:52555 fd=5 name= age=855 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
addr=127.0.0.1:52787 fd=6 name= age=6 idle=5 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=ping
age:表示连接存在的时间,单位秒
idle:表示连接空闲时间,单位秒
查看redis客户端超时设置
redis-cli config get timeout
1) "timeout"
2) "0" #0表示不开启空闲清除
设置空闲清理时间
redis-cli config set timeout 600
转载请注明:隨習筆記 » redis 客户端连接过多不释放