从nodejs有效地serialise(和读取)int数组

我正在考虑在nodejs中构build一个应用程序,该应用程序需要传输包含整数数组的大型(> GB)文件。 至关重要的是,arrays需要最优化地进行序列化,所以不是基于ascii的,理想地,对于较小的整数(这将是绝大多数数据)使用8位,但仍然能够表示更大的数字。

这个问题可能比nodejs更多,但是如何在nodejs中进行呢? 是否有从磁盘自定义字节编码stream文件的现成解决scheme? 或者更好,整数数组?

理想情况下,应该可以将stream的每个部分解码为磁盘绑定而不是cpu绑定,即使是ssd也是如此。

我感到很蠢的是没有深入研究文档(这个项目的目的是为了学习nodejs)。

发现文件系统模块的默认行为查找作业。 虽然我还没有实现可变长度量解码部分或者testing速度呢。

var fs, rs, bufferSize, buffer, i; fs = require('fs'); rs = fs.createReadStream('/Path/to/file'); bufferSize = 10; while(true){ buffer = rs.read(bufferSize); if (!buffer) break; for(i=0; i<buffer.length; i++;){ byte = buffer[i]; // interpret byte given as integer according to 'variable-length quantity' encoding } } 

http://en.wikipedia.org/wiki/Variable-length_quantity

编辑:我做了一个function齐全的脚本的主旨 。