2015-12-02 76 views
0

我有我需要倾倒提交一份庞大的数据结构:避免Node.js的事件循环块,而运行JSON.stringify

fs.writeFile('dump.json', JSON.stringify(bigData)); 

得到的文件是接近100MB,它需要几秒钟才能产生。当JSON.stringify运行时,它会阻止事件循环,而我的服务器不处理任何请求。

有没有办法以某种方式拆分JSON.stringify呼叫?我的bigData var是一个对象数组,因此我可能会编写一个函数来分别序列化它们,然后将JSON缝合在一起,以确保可以在两者之间处理请求 - 但是是否存在任何已存在的解决方案(外部模块很好)?

回答

0

尝试stream-json-stringify。它应该做的伎俩。

+0

尽管此链接可能会回答问题,但最好在此包含答案的重要部分,并提供供参考的链接。如果链接页面更改,则仅链接答案可能会失效。 - [来自评论](/ review/low-quality-posts/10412107) –

+0

@AhmedAshour - 你不能认真地期望整个模块源码被粘贴在答案中。链接到模块的主页,这很好。 – Rytis

+0

至于模块本身,它会写入一些数据,但不是全部 - 我只得到大约50MB而不是全部100MB的数据。很难追查失踪的东西! – Rytis