Redis中KEYS和SCAN命令的区别和建议

当我们需要遍历Redis所有key或者指定模式的key时,首先想到的是KEYS命令,例如:keys *

相当于关系型数据库里的select *,因此在一个生产环境中的大Redis数据库中使用这个命令可能会造成性能问题。

从Redis2.8版本以后官方给我们提供了一个更好的遍历KEY的命令SCAN

语法为:

SCAN cursor [MATCH pattern] [COUNT count]


例如:

127.0.0.1:6379> scan 0 match *192.168*

1) "105"

2) 1) "192.168.0.220:6379:CommandCountByMinute"

   2) "192.168.0.121:6379:memory"

   3) "192.168.0.213:6379:CommandCount:1528190604"

   4) "192.168.0.221:6379:KeyCount:1528190601"

   5) "192.168.0.226:6379:KeyCount:1528190334"

   6) "192.168.0.129:6379:CommandCount:1528121363"

   7) "192.168.0.129:6379:KeyCount:1528121366"


SCAN 命令返回的每个元素都是一个数据库键,该命令对数据库的性能影响比较小,因此推荐在生产环境中使用。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15498/viewspace-2212688/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/15498/viewspace-2212688/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值