有人可以解释一下以下 Redis 命令如何将内容返回给我吗?各个编号的行负责什么?
1: *3
2: $4
3: hget
4: $21
5: zc:k:b23_cache_config
6: $1
7: d
8: $5264$5264
有人可以解释一下以下 Redis 命令如何将内容返回给我吗?各个编号的行负责什么?
1: *3
2: $4
3: hget
4: $21
5: zc:k:b23_cache_config
6: $1
7: d
8: $5264$5264
消息格式称为统一请求协议。
星号*
表示在此请求中预期有多少参数。所以,*3
是针对三个论点。
美元符号$
表示参数中预期的字节数。所以,$1
是一个字节。
*<number of arguments> CR LF
$<number of bytes of argument 1> CR LF
<argument data> CR LF
...
$<number of bytes of argument N> CR LF
<argument data> CR LF
您示例中的原始消息如下所示:
*3\r\n$4\r\nhget\r\n$21\r\nzc:k:b23_cache_config\r\n$1\r\nd\r\n
此特定请求将返回 a bulk reply response
,如下所示:
$<number of bytes> CR LF
<DATA> CR LF
如果请求的密钥不存在,那么回复将是:
$-1