【发布时间】:2013-01-04 04:42:27
【问题描述】:
我有一些以字节为单位的数据,我想把它们放到 Redis 中,但是 Redis 只接受二进制安全字符串,而我的数据有一些二进制非安全字节。那么如何将这些字节转换为二进制安全字符串,以便将它们保存到 Redis 中呢?
Base64 对我有用,但它使数据更大,有更好的主意吗?
更新:我想将我的protobuf对象序列化为Redis,并且序列化的数据有'\x00',所以当我从Redis读取数据时,我无法将数据反序列化为对象。然后我尝试了base64,它工作正常,但尺寸更大。
所以我想弄清楚如何以更小的尺寸安全地将二进制数据(protobuf 对象)序列化到 Redis
【问题讨论】:
-
你有确切什么是“二进制安全字符串”的详细信息吗?这不是一个标准术语。
-
Reading this,看来对于Redis来说,二进制安全只是意味着Redis不会改变内容。除非我遗漏了什么(很可能,因为我以前没有使用过 Redis),否则您不需要对数据做任何事情。
-
@Pablo 我已经更新了我的问题以了解更多详情
-
@JonSkeet 我已经更新了我的问题以了解更多详情
-
@MartinLuo:您的编辑没有提供有关“二进制安全字符串”含义的更多信息。
标签: java redis binary-data