如何压缩 Python 对象,以便在将其保存到缓存之前?
有时在将 Python 对象(列表、字典、字符串等)保存到缓存前,我们需要对其进行压缩,并在从缓存中读取后进行解压缩。
首先,我们需要确定是否需要压缩这些对象。我们应该检查数据结构/对象是否太大,无法以未压缩的形式放入缓存。压缩/解压缩本身会产生一些开销,我们必须权衡其与缓存本身带来的好处。
如果我们确实需要压缩,那么我们可能会使用 zlib。
如果我们准备使用 zlib,我们可能会想要尝试在 compress 方法中提供的不同压缩级别,以平衡 CPU 时间和压缩级别
zlib.compress(string[, level])
压缩 string 中的数据,返回一个包含已压缩数据的字符串。level 是控制压缩级别的 1 到 9 之间的整数;1 表示最快,产生的压缩比最低,9 表示最慢,产生的压缩比最高。默认值为 6。如果出现任何错误,会引发 error 异常。
广告