NodeJs如何在后台压缩uint8array

时间:2014-11-20 13:30:28

标签: multithreading node.js zip compression web-worker

我有一个使用node.js的多用户应用程序,我想压缩一个大的uint8array并在压缩后存储它(所以没有实时要求)。

由于压缩可能是阻塞的,可能需要一些时间,我想在后台线程中执行此操作。最好的方法是什么? (示例代码会很好,因为我在使用外部库和webworker时遇到了一些问题)。

数据非常重复,因此简单的类似压缩的压缩可能已经足够了。

1 个答案:

答案 0 :(得分:0)

您可以使用内置zlib模块。它包括异步函数,它们委托给引擎盖下的线程池。唯一的问题是它适用于Buffer s,而不是类型化数组。没有很好的方法可以将类型化数组或数组缓冲区转换为节点缓冲区,因此您应该考虑使用缓冲区来存储二进制数据。