BT

Node.js、Windows上でネイティブ実行が可能に

| 作者: Abel Avram フォローする 10 人のフォロワー , 翻訳者 笹井 崇司 フォローする 0 人のフォロワー 投稿日 2011年11月15日. 推定読書時間: 2 分 |

原文(投稿日:2011/11/11)へのリンク

 

Node.jsがCygwinなしでWindowsで動くようになった。パフォーマンスはWindows、Unix系ともにかなり改善されている。

Node.jsの作者Ryan Dahl氏は、サーバサイドJavaScript環境の新しい安定バージョン、Node.js 0.6を発表した。その最重要フィーチャーはソケットにI/O Completion Portsを使ったWindowsのネイティブサポートだ。Node.jsのこれまでのバージョンはCygwin経由でしか動かせなかったが、これによってCygwinビルドはもはやサポートされなくなる。Windowsのほか、Node.jsはLinux、Mac OS X、webOS、それからSolaris、FreeBSD、OpenBSDといった各種Unix系システムもサポートしている。

Dahl氏は、Windowsへの移植には大きなアーキテクチャ変更を必要としたが、ほとんどのAPIはそのままで、Unixシステムにおけるパフォーマンス低下は当初危惧されたほどではなかった、と述べた。彼はその証拠に、いくつかの数値を示した。

  Linux v 0.4.12 Linux v 0.6.0
http_simple.js /bytes/1024 5461 r/s 6263 r/s
io.js read 19.75 MB/s 26.63 MB/s
io.js write 21.60 MB/s 17.40 MB/s
startup.js 74.7 ms 49.6 ms

唯一問題なのは、Linuxでの書き込みパフォーマンスが低下しているところのようだ。しかし以下のデータが示すように、Cygwinを使わなくなったことによって、Node.jsはWindows上で非常によい結果を得ている。

  Windows v 0.4.12 Windows v 0.6.0
http_simple.js /bytes/1024 3858 r/s 5823 r/s
io.js read 12.41 MB/s 26.51 MB/s
io.js write 12.61 MB/s 33.58 MB/s
startup.js 152.81 ms 52.04 ms

ほかにもNode.js 0.6には大きな改善がいくつかある。クラスタ上の複数のNodeプロセス実行のためのロードバランシングの統合や、zlibライブラリへの組込みバインディング、また、Nodeインスタンス間のIPCサポートの改善、改善されたデバッガなどがある。また、NodeはV8 3.6を使うようになっている。

API変更についてはNodeのGitHubページに詳しく説明されている。

Dahl氏はリリースサイクルの短縮についても言及した。Googleが新しいV8をChromeでリリースすると、Node.jsも新しいバージョンをリリースするとのことだ。

 

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT