BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Dart 1.3のパフォーマンスはNode.jsと同レベルに

Dart 1.3のパフォーマンスはNode.jsと同レベルに

原文(投稿日:2014/04/10)へのリンク

GoogleのDartチームがDart SDK 1.3を発表した。これには非同期サーバサイドコードのパフォーマンス改善が含まれており、Dart VMは別のGoogleテクノロジーであるV8エンジンを使ったNode.jsと同レベルになったようだ。

Dartは新しいパフォーマンスのページを用意し、HTTPサーバのリクエスト/sec、平均遅延、最大遅延を3つのケースで測定することで、VMとdart:ioライブラリのパフォーマンスをグラフ化している。

  • Hello - すべてのリクエストに対して文字列 “world” で応答するシンプルなHTTPサーバ

  • File - 100KBのファイルの内容を返すHTTPサーバ

  • JSON - 動的に生成したJSON文字列を返すHTTPサーバ

このチャートによると、Dart 1.2と比べて、DartサーバはHelloとJSONのシナリオで2倍以上のトラフィックをさばけるようになり、Fileリクエストに対しては30%改善している。結果的に、平均遅延はHelloとJSONで半分以下に、Fileで約30%削減されている。これまで最大遅延はHelloとJSONそれぞれ約125msと300msで大きく変動していたが、今や値はかなり安定して約5msと7msになっている。

GoogleのエンジニアAnders Johnsenによると、Dartのサーバサイドのパフォーマンス改善は、世代別GCの利用、 Mac OSとLinuxにおける非同期I/O処理のシステムコール数の削減、VMコンパイラとdart:coreおよびdart:asyncのコードセクションの最適化によるそうだ。

2013年12月時点のTechEmpowerのベンチマークによると、Dart/nginxが約35,000 JSONリクエスト/secなのに対し、Node.jsは約70,000リクエスト/secだった。Dartは2倍以上のJSONリクエストを扱えるようになったので、Dart VMはNode.jsと同レベルになったのではないかと思われる。これは今後のTechEmpowerベンチマークで確認できるだろう。同じベンチマークによると、GoogleのGoで作ったシンプルなHTTPサーバは約215,000 JSONリクエスト/secで、すべてのフレームワーク/プラットフォームを凌駕しているようだ。

この記事に星をつける

おすすめ度
スタイル

BT