PHP Redis的scan命令如何实现高效数据检索?
- 内容介绍
- 文章标签
- 相关推荐
本文共计359个文字,预计阅读时间需要2分钟。
在清除缓存时,我们有时需要在某些场景下批量删除,但不确定具体的key值,可以采用通配符匹配的方式查询后再删除。但直接使用keys命令会导致redis服务器性能瓶颈,请谨慎使用。一般公司也会禁止使用k命令。
在删除缓存的时候,我们在一些场景下需要批量删除,但不确定具体的key值,可通过匹配的方式进行查询后删除。
但是使用keys会导致redis服务器宕机。慎用。。。
一般公司也会禁用keys等比较敏感的命令的。
所以工作中会使用scan命令来进行匹配查询
SCAN cursor [MATCH pattern] [COUNT count]
比如
# 从游标 0 开始扫描 匹配 test1:* 的键值,一次扫描1000条 scan 0 match test1:* count 1000
1) 表示下一次扫描的游标值 ,命令行显示的是字符串类型的。
本文共计359个文字,预计阅读时间需要2分钟。
在清除缓存时,我们有时需要在某些场景下批量删除,但不确定具体的key值,可以采用通配符匹配的方式查询后再删除。但直接使用keys命令会导致redis服务器性能瓶颈,请谨慎使用。一般公司也会禁止使用k命令。
在删除缓存的时候,我们在一些场景下需要批量删除,但不确定具体的key值,可通过匹配的方式进行查询后删除。
但是使用keys会导致redis服务器宕机。慎用。。。
一般公司也会禁用keys等比较敏感的命令的。
所以工作中会使用scan命令来进行匹配查询
SCAN cursor [MATCH pattern] [COUNT count]
比如
# 从游标 0 开始扫描 匹配 test1:* 的键值,一次扫描1000条 scan 0 match test1:* count 1000
1) 表示下一次扫描的游标值 ,命令行显示的是字符串类型的。

