Leia grandes arquivos de texto em nodejs

Tenho brincado com o NodeJS recentemente e recebi o seguinte erro ao tentar ler um arquivo de texto muito grande:

FATAL ERROR: CALL_AND_RETRY_0 Allocation failed - process out of memory

A solução a seguir permite que você transmita um arquivo em vez de ler tudo na memória:

var fs = require('fs');
var readline = require('readline');
var stream = require('stream');

var instream = fs.createReadStream('your/file');
var outstream = new stream;
var rl = readline.createInterface(instream, outstream);

rl
.on('line', function(line) {
// process line here
});

rl
.on('close', function() {
// do something on finish here
});