2010-12-06 3 views

답변

1

실수로 각각 완료 요청에 대한 2 개 개의 새로운 요청을 전송했다. 하나는 끝이고 하나는 닫습니다.

+0

귀하의 답변 인 경우에도 허용 된 답변으로 신고해야합니다. – Kynth

1

저는 0.3.1에 있으며, GC는 보통 여기에서 시작합니다. node --trace_gc test.js를 사용

이 거의 도달하지 5메가바이트 :

[email protected]:~/Desktop$ node --trace_gc test.js 
Scavenge 0.9 -> 1.0 MB, 1 ms. 
Scavenge 1.9 -> 1.8 MB, 0 ms. 
Scavenge 2.6 -> 1.9 MB, 1 ms. 
Mark-sweep 2.9 -> 1.8 MB, 6 ms. 
Scavenge 2.8 -> 1.8 MB, 0 ms. 
Scavenge 2.9 -> 1.9 MB, 0 ms. 

또 다른 실행 : 그것은 GC'ing에 관해서

[email protected]:~/Desktop$ node --trace_gc test.js 
Scavenge 0.9 -> 1.0 MB, 1 ms. 
Scavenge 1.9 -> 1.8 MB, 0 ms. 
Scavenge 2.6 -> 1.9 MB, 1 ms. 
Mark-sweep 1.9 -> 1.8 MB, 4 ms. 
Mark-sweep 1.8 -> 1.7 MB, 3 ms. 
Mark-compact 1.7 -> 1.7 MB, 11 ms. 
Scavenge 2.3 -> 1.8 MB, 0 ms. 
Scavenge 2.3 -> 1.8 MB, 0 ms. 
Scavenge 2.3 -> 1.8 MB, 0 ms. 
Scavenge 2.0 -> 1.9 MB, 0 ms. 
Mark-sweep 1.9 -> 1.6 MB, 3 ms. 
Mark-compact 1.6 -> 1.6 MB, 10 ms. 

V8은 매우 지능, 한 가지 당신이 피려하고 싶어 수도 글로벌리스트 등에서 일부 참조를 푸시하지 않는 것은 그 참조가 살아있는 모든 것을 유지하기 때문입니다.

많은 양의 데이터를 처리하는 경우 Buffer을 사용하고 즉시 할당하는 것이 좋습니다. 특히 0.3.x 버퍼는 매우 빠릅니다.

+0

확인해 주셔서 감사합니다. – richcollins

관련 문제