2015-01-25 2 views
1

NodeJS 0.11에서는 사용자 정의 C++ 코드를 추가하고 V8로 컴파일 한 다음 모듈로 필요합니다.NodeJS C++ addon 성능

C++ 애드온에서 많은 수학을 할 때 '기본'자바 스크립트보다 훨씬 빠릅니까?

+3

V8 컴파일러를 과소 평가하지 마십시오. 또한 js <-> C++ 경계를 넘을 때 약간의 오버 헤드가 있습니다. 두 가지 방법으로 코딩하고 벤치마킹하십시오. – mscdex

답변

1

아마, 그러나 그것은 수학에 달려 있습니다. C++을 사용하더라도 계산에 소요되는 시간이 너무 길어질 수 있으므로 주 노드 루프가 차단되어 결국 시스템 성능이 저하됩니다. 하드웨어 및 계산의 크기와 특성에 따라 다릅니다.

작업자 스레드에서 계산을 수행합니다. 이렇게하면 여러 코어/CPU를 활용할 수 있으며 수학 시간이 얼마나 걸리더라도 주 루프를 차단하지 않습니다. 노드 cluster이 여기에 도움이 될 수 있습니다. C++ 애드온을 사용하기로 결정한 경우 libuv 함수, 특히 uv_queue_work을 볼 수 있습니다.