BT

InfoQ ホームページ ニュース Node.jsの新しいStreaming API

Node.jsの新しいStreaming API

ブックマーク

原文(投稿日:2013/01/21)へのリンク

 

GoogleのV8エンジン上に構築されたサーバーサイドのJavaScriptプラットフォームであるNode.jsの安定していない0.9.4リリースには、新しいStreaming APIが含まれている。"streams2"という愛称をつけられたそれは、0.10安定バージョンに含まれる予定になっている。

新しいAPIは、一時停止状態でストリームを開始することでデータロスから保護して、リスナーは、‘data’イベントを発行する前にアタッチされるまで待機する。また一時停止状態は、単にアドバイザリーである代わりに、いかなる‘data’イベントも発行しないことが保障される。新しいread()メソッドには、ストリームから任意のバイト数の読み込みや、ほかのプログラムで利用するために残りを捨てることが可能だ。

古いメソッドとイベントは、後方互換が維持されている:

'data'イベントハンドラーが追加されたとき、またはpause()かresume()メソッドが呼ばれたとき、読み可能なストリームが"old mode"に切り替わる。この効果は、もし新しいread()メソッドとreadable'イベントを使っていなかったとしても、チャンクを失う心配をする必要がなくなるということである。

エッジケースが導入された - ‘data’イベントハンドラが追加されず、pause()とresume()メソッドが呼ばれていないとき、ストリームは、‘end’イベントが発行されて、残りは停止し続ける。

新しいストリームの実装は、0.4リリースから議論されてきたが、より緊急度の高い問題が常にあって、後方互換を維持するのが難しいと考えられてきた。0.10では、問題は小さくなって、開発者はトライしてフィードバックを送ることが推奨されている。

Node.jsは、早く構築でき、ネットワークアプリケーションにスケーラブルに設計されており、Joyent, Incと同様にオープンソースコミュニティで開発され、Microsoft、LinkedIn、eBayといった企業で利用されている。

 

この記事に星をつける

おすすめ度
スタイル

こんにちは

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

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

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

コミュニティコメント

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

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

BT

あなたのプロファイルは最新ですか?プロフィールを確認してアップデートしてください。

Eメールを変更すると確認のメールが配信されます。

会社名:
役職:
組織規模:
国:
都道府県:
新しいメールアドレスに確認用のメールを送信します。このポップアップ画面は自動的に閉じられます。