парсинг большого xml 500M с помощью node.js - PullRequest
3 голосов
/ 03 января 2012

Я использую isaacs 'SAX для анализа огромного XML-файла. Также рекомендовано La Gentz ​​.

Процесс использует около 650M памяти, как я могу уменьшить это или разрешить узлу использовать еще больше.

FATAL ERROR: CALL_AND_RETRY_0 Allocation failed - process out of memory

Размер моего XML-файла превышает 300 М, он может увеличиться до 1 ГБ.

1 Ответ

8 голосов
/ 03 января 2012

Вы должны передать файл в анализатор, в этом и заключается весь смысл потокового анализатора.

var parser = require('sax').createStream(strict, options);
fs.createReadStream(file).pipe(parser);
...