node.js:压缩string

我需要caching(在内存中)一堆相当冗长的string。 似乎不必要地使用内存,特别是当有一个内存配额强加,所以想知道在caching之前压缩这些string是合理的,然后提取后解压缩。

看起来像node.js有一个内置的zlib模块 ,虽然这似乎更多地针对文件/stream压缩,可能是用于简单的string压缩,例如从文档:

var input = '.................................'; zlib.deflate(input, function(err, buffer) { if (!err) { console.log(buffer.toString('base64')); } }); 

有什么想法吗? 任何其他库或实用function可用?

关于nodejs压缩的一个问题, 在这里引导我到这个页面 ,列出了一堆压缩库。

我不确定项目的确切上下文,但是如果担心可能存在关于内存和性能的问题, 那么这个名为node-snappy的库似乎就是您正在寻找的。

根据作者的基准,基本上,它需要一个像你想要的string,并比zlib更有效地压缩它。

  snappy.compress() x 479 ops/sec ±0.99% (80 runs sampled) zlib.gzip() x 289 ops/sec ±1.66% (86 runs sampled) snappy.uncompress() x 652 ops/sec ±0.86% (43 runs sampled) zlib.gunzip() x 559 ops/sec ±1.65% (64 runs sampled)