在NodeJS上使用zlib的便捷方法

时间:2014-02-25 23:46:34

标签: node.js zlib compression

使用zlib便捷方法解压缩gzip压缩的JSON数据是否昂贵,性能明智?或者我最好将数据传输到zlib对象?

1 个答案:

答案 0 :(得分:1)

通常最好尽可能使用流,但正如你所说,解压缩响应的结果将是相同的。

然而,有一些主要因素会在等到最终解压缩时发生变化。

  1. 您需要额外的内存开销,因为在解压缩之前必须将所有请求数据缓冲在内存中。
  2. 你有额外的CPU开销,必须将它们连接在一起。
  3. 对于低负载服务,这些都不重要,但从长远来看,它们可能会影响性能和功能。

    如果您想在一台1 GB的RAM上上传和解压缩服务器上的2GB视频,该怎么办?第一点会让你因内存不足而崩溃,第二点意味着即使你拥有了RAM,你也必须先复制一大堆数据才能达到解压缩的程度。

    通过使用流API,您可以在它们进入时解压缩块并立即将它们写入文件系统或DB或S3或其他内容。