Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我的redis命令键不阻止我的其他操作_Redis_Redis Cli - Fatal编程技术网

为什么我的redis命令键不阻止我的其他操作

为什么我的redis命令键不阻止我的其他操作,redis,redis-cli,Redis,Redis Cli,从许多博客中,我了解到redis命令keys*可能会阻塞redis服务器,其他命令无法按时执行 然而,今天我在我的数据库上运行键*,它有大约800万数据。 然后,我使用我的另一个客户端执行其他命令,如get或set,这些都很好地工作,并及时给出响应 所以,我不明白为什么我的命令键不阻塞 图片是键(以及几乎任何其他Redis命令)是阻塞,不要上当:) 当Redis扫描其内部字典并组装响应时,它被阻止。但是,在响应就绪并移动到网络层后,服务器可以自由处理下一个操作。与此同时,您的客户端从发送密钥到收

从许多博客中,我了解到redis命令
keys*
可能会阻塞redis服务器,其他命令无法按时执行

然而,今天我在我的数据库上运行
键*
,它有大约800万数据。 然后,我使用我的另一个客户端执行其他命令,如
get
set
,这些都很好地工作,并及时给出响应

所以,我不明白为什么我的命令
不阻塞

图片是

(以及几乎任何其他Redis命令)阻塞,不要上当:)

当Redis扫描其内部字典并组装响应时,它被阻止。但是,在响应就绪并移动到网络层后,服务器可以自由处理下一个操作。与此同时,您的客户端从发送
密钥到收到整个响应都会被阻止。

密钥
(以及几乎任何其他Redis命令)正在被阻止,不要上当:)


当Redis扫描其内部字典并组装响应时,它被阻止。但是,在响应就绪并移动到网络层后,服务器可以自由处理下一个操作。与此同时,您的客户端从发送
密钥到收到整个响应都会被阻止。

回答非常好!回答得很好!