我正在研究Redis密钥中命名空间的分隔符。因为我将要用作密钥的一部分的文章编号和内容有很多字符,如:
,-
,_
等等。我正在考虑使用制表机\t
。这有什么已知的问题吗?
答案 0 :(得分:1)
在redis键中使用你想要的任何字符是安全的,redis是二进制安全的。 在某些特定情况下,我们甚至在键内部使用空字符。从二进制客户端(所以不是像redis-cli这样的命令行工具),即使是空字符也没问题。
这在redis.io datatypes中有所描述。 redis字符串是二进制安全的,更高级的redis数据类型使用redis字符串。
关于键内空字符的注释:
真实场景是使用UUID字节序列(而不是ascii GUID表示)作为键。您可以选择此选项以最小化内存使用量。另一个是使用MsgPack序列化格式(在redis Lua脚本中本机支持),它是二进制的,当然包含空字符。使用空字符的缺点是,当然,在调试或记录时可读性,能够轻松执行命令行管道和/或使用交互式redis-cli客户端。
希望这有帮助,TW