keys
和scan
都可以用于搜索某个模式的 keykeys
会返回所有匹配的 key;scan
是利用游标, 迭代每次返回一部分 key, 并不是全部keys
在数据量大的 redis 中, 由于耗时久, 可能阻塞影响其他线程;scan
不糊阻塞其他线程
keys
# keys <pattern>
# 匹配 redis 中所有 a 开头的 key
keys a*
# scan <cursor> [match pattern] [count count]
# 游标 0 开始, 扫描 a* 的 key, 展示 2 条
scan 0 match a* count 2
scan
结果是数组, 第一个元素是下次游标, 用于下次遍历
第 2 个元素是数组, 数组中每个元素是匹配到的 key