4

非常に長い JSON テキストを JSON オブジェクトに解析する必要があります。次のコードで実行時間を測定しようとしました。

var t = process.hrtime()
JSON.parse(jsonStr);
t = process.hrtime(t);

約 0.5 ミリ秒かかります。これはかなりの時間です。nodejs は V8 エンジン用にシングルスレッドであるため、この操作が非常に重く頻繁に行われると、スループットに大きな影響を与えます。

したがって、NodeJS ネイティブ アドオンとして C 言語で非同期 JSON.parse を記述しuv_queue_work、重い操作を別のスレッドで実行し、マルチコアを使用して nodejs メイン ループを占有しないようにする予定です。

問題は、nodeJS の V8 オブジェクトが、メイン スレッド以外のスレッドからアクセスできないことです。

テキストを解析して別のスレッドで V8 オブジェクトを作成し、新しく作成された V8 オブジェクトをメイン スレッドにコピーする方法はありますか?

Br

4

1 に答える 1

1

テキストを解析して別のスレッドで V8 オブジェクトを作成し、新しく作成された V8 オブジェクトをメイン スレッドにコピーする方法はありますか?

それを行う良い方法はありません。

すべてのコアを使用する場合は、clustermodule を使用して複数の node.js プロセスを生成し、それぞれに異なる要求を処理させることをお勧めします。

于 2014-02-13T13:04:48.093 に答える