2015-12-02 61 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