在Redis中选择\ t作为键内部分隔符时是否有任何问题?

时间:2014-01-27 17:33:15

标签: redis

我正在研究Redis密钥中命名空间的分隔符。因为我将要用作密钥的一部分的文章编号和内容有很多字符,如:-_等等。我正在考虑使用制表机\t。这有什么已知的问题吗?

1 个答案:

答案 0 :(得分:1)

在redis键中使用你想要的任何字符是安全的,redis是二进制安全的。 在某些特定情况下,我们甚至在键内部使用空字符。从二进制客户端(所以不是像redis-cli这样的命令行工具),即使是空字符也没问题。

这在redis.io datatypes中有所描述。 redis字符串是二进制安全的,更高级的redis数据类型使用redis字符串。

关于键内空字符的注释:

真实场景是使用UUID字节序列(而不是ascii GUID表示)作为键。您可以选择此选项以最小化内存使用量。另一个是使用MsgPack序列化格式(在redis Lua脚本中本机支持),它是二进制的,当然包含空字符。使用空字符的缺点是,当然,在调试或记录时可读性,能够轻松执行命令行管道和/或使用交互式redis-cli客户端。

希望这有帮助,TW