![]() |
Jetty provides an HTTP server, HTTP client, and Servlet container. |
次期リリースとなる「Jetty 7.5.0」と「CometD 2.4.0」の組み合わせは、WebSocketを活用したサーバ/ブラウザ間双方向通信を実現するにあたって魅力的な選択肢になる可能性がある。双方ともまだスナップショットの状況にあるが、スナップショット版を使ってラフなベンチマークを実施した結果がPrelim Cometd WebSocket Benchmarks - Webtide Blogsに掲載された。あまり現実的なベンチマークではないが、WebSocketトランスポートの性能がロングポーリントランスポートと違ってスケールしていることが示されており興味深い。
JettyはJavaで実装されたHTTPサーバ/Servletコンテナ。軽量で高速という特徴がある。最新スナップショット版は最新のJava仮想マシンおよびJITコンパイラで性能が発揮されるように最適化されているほか、最新のWebSocketドラフト版を実装している。
CometDはDojoファウンデーションが支援しているイベントルーチンバス。もともとXMLHttpRequestをバックエンドの通信基盤としつつ、その上にイベントベースの双方向通信処理を可能にすることを目的としていた。通信に使われる仕様は「Bayeux」として定められており、ロングポーリング(デフォルト)とコールバックポーリングという2つのトランスポートをサポートしている。
WebSocketが登場したことでCometDは実験的ながらもトランスポートとして「WebSocket」をサポートするように実装を変更。将来的にはブラウザでJavaScript版のCometDクライアントを使う場合、WebSocketをサポートしたブラウザであれば「WebSocketトランスポート」がデフォルトで使われることになる。
ベンチマークではCometdの「ロングポーリングトランスポート」と「WebSocketトランスポート」の2つを比較。チャットアプリケーションとサーバが動作しているというシナリオを想定し、100クライアント、1,000クライアント、10,000クライアント時の性能を比較している。
XMLHttpRequestを通信のベースに採用している従来の「ロングポーリングトランスポート」ではクライアント数が増えれば性能が落ちていくことは仕組み上避けることが難しく、ベンチマークにおいてもその傾向が出ている。これと比較して「WebSocketトランスポート」は優れた性能を発揮していることが示されている。
WebSocketを使った通信ではHTTP通信に必要となる冗長な処理やヘッダがなく、効率の良い双方向通信が可能になる。WebSocket仕様そのものがまだドラフトの段階にあるが、効率の高い双方向通信を実現するための要の仕様になるとみられており、関連するサーバやクライアントライブラリ、ブラウザの実装なども含めて今後の展開が注目される技術といえる。
| アイシンの最新安全運転システム - 車両周辺・後方障害物監視、わき見・居眠り判断 [10:30 5/28] |
| ラネクシー、画像処理ソフトウェア開発キットの最新版を64bit版で販売 [10:10 5/28] |
| 東陽テクニカ、1G/10GbE回線対応のポータブルネットワークアナライザ [09:57 5/28] |
| 日本発の取り組み「Mozilla Factory」がスタート [09:30 5/28] |
| 【レポート】クラウド/モバイル/ビッグデータ時代に求められるUIとは - TOBESOFT 金代表 [09:00 5/28] |
|
ネット上でEdy決済可、非接触ICリーダーライター『楽天Edyリーダー』販売 [15:09 5/28] ライフ |
|
ローランド、iPhone・iPadでレコーディングできる無料アプリをリリース [15:08 5/28] クリエイティブ |
|
【女性編】あこがれの場所へ1日限定で1カ所だけ行けるなら、あなたはどこへ行きますか?ランキング [15:00 5/28] ライフ |
|
【男性編】あこがれの場所へ1日限定で1カ所だけ行けるなら、あなたはどこへ行きますか?ランキング [15:00 5/28] ライフ |
|
SKE48の松井玲奈、総選挙7位の速報に「ファンの期待を裏切らないように」 [15:00 5/28] エンタメ |
4つの診断で、自分の適性を見つめなおそう!
働くこと・挑戦し続けることへの思いを綴ったインタビュー
あなたにピッタリのアドバイスを読むことができます。
転職に必要な情報が収集できます
企業からアプローチのメッセージが届きます。