redis中不能放对象,但是可以放json数据和pickle序列化数据
来源:11-11 如何选择redis的数据结构来保存cookie
荒小七
2020-04-22
redis中不能放对象,但是可以放json数据和pickle序列化数据,请问json数据和pickle序列化数据在redis中有什么区别呢??scrapy-redis中为什么不使用json格式的数据呢?
写回答
1回答
-
Pickle 协议和 JSON (JavaScript Object Notation) 间有着本质的不同:
一. JSON 是一个文本序列化格式(它输出 unicode 文本,尽管在大多数时候它会接着以 utf-8 编码),而 pickle 是一个二进制序列化格式;
二. JSON 是我们可以直观阅读的,而 pickle 不是;
三. JSON是可互操作的,在Python系统之外广泛使用,而pickle则是Python专用的;
四. 默认情况下,JSON 只能表示 Python 内置类型的子集,不能表示自定义的类;但 pickle 可以表示大量的 Python 数据类型(可以合理使用 Python 的对象内省功能自动地表示大多数类型,复杂情况可以通过实现 specific object APIs 来解决)。012020-04-23
相似问题