ฉันได้รับข้อผิดพลาดนี้ FATAL ERROR: JS Allocation failed - process out of memory
และได้ระบุแล้วว่าเป็นปัญหาที่ฉันส่งออบเจ็กต์ json ที่มีขนาดใหญ่มากไปที่ res.json
(หรือ JSON.stringify
) เพื่อให้บริบทแก่คุณ โดยพื้นฐานแล้วฉันจะส่งไฟล์กำหนดค่าประมาณ 30,000 ไฟล์ (ไฟล์กำหนดค่าแต่ละไฟล์มี ประมาณ 10,000 บรรทัด) เป็นวัตถุ json หนึ่งรายการ
คำถามของฉันคือมีวิธีส่งวัตถุ json ขนาดใหญ่เช่นนี้หรือมีวิธีที่ดีกว่าในการสตรีมมัน (เช่นใช้ socket.io หรือไม่)
ฉันใช้: โหนด v0.10.33, [email protected]
อัปเดต: โค้ดตัวอย่าง
var app = express();
app.route('/events')
.get(function(req, res, next) {
var configdata = [{config:<10,000 lines of config>}, ... 10,000 configs]
res.json(configdata); // The out of memory error comes here
})