使用redis的client命令返回数据的含义

最近redis经常出现连接池满的问题,通过redis 的 client list命令查看返回数据,返回的数据样例为:

id=399784 addr=127.0.0.1:53818 fd=87 name= age=885 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=exec

id=399031 addr=127.0.0.1:35208 fd=56 name= age=10071 idle=8785 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=set

由于初次接触,不明白什么含义,特此做下记录:

  • id: 唯一的64位的客户端ID(Redis 2.8.12加入)。
  • addr: 客户端的地址和端口
  • fd: 套接字所使用的文件描述符
  • age: 以秒计算的已连接时长
  • idle: 以秒计算的空闲时长
  • flags: 客户端 flag
  • db: 该客户端正在使用的数据库 ID
  • sub: 已订阅频道的数量
  • psub: 已订阅模式的数量
  • multi: 在事务中被执行的命令数量
  • qbuf: 查询缓冲区的长度(字节为单位, 0 表示没有分配查询缓冲区)
  • qbuf-free: 查询缓冲区剩余空间的长度(字节为单位, 0 表示没有剩余空间)
  • obl: 输出缓冲区的长度(字节为单位, 0 表示没有分配输出缓冲区)
  • oll: 输出列表包含的对象数量(当输出缓冲区没有剩余空间时,命令回复会以字符串对象的形式被入队到这个队列里)
  • omem: 输出缓冲区和输出列表占用的内存总量
  • events: 文件描述符事件
  • cmd: 最近一次执行的命令

通过了解各个字段的含义,看得出中间有很多空闲的空连接,导致连接池满了,所以设置redis的连接池中最大的空闲连接数,继续观察。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值