このページの本文へ

node.jsとWebSocketで作る野球盤ゲームの裏側 (2/4)

2011年07月04日 10時00分更新

文●ハン☆スタ制作委員会/マインドフリー株式会社

  • この記事をはてなブックマークに追加
本文印刷

node.jsとWebSocket

 WebSocketは、W3C(World Wide Web Consortium)とIETF(Internet Engineering Task Force)が標準化を進めているクライアント/サーバー間の双方向通信のための規格です。以前はHTML5の仕様の一部でしたが、現在は独立した仕様として標準化が進められています。

 チャットや対戦ゲームなど、リアルタイムで通信するWebアプリに適しており、WebブラウザーとしてはGoogle Chrome/Safari/モバイルSafari(iOS4.2以上)でサポートされています(現在のところAndroidでは使用できません)。

 node.jsでWebSocketを扱う場合は、「Node WebSocket Server」モジュールを使います。

 Node WebSocekt Serverはシンプルな実装なので扱いが簡単です。npmで以下のようにインストールします。


$ npm install  websocket-server


 WebSocketの実装としてほかに有名なのが「Socket-IO」というモジュールです。

Socket-IO
http://socket.io/

 Socket-IOは非同期双方向通信ライブラリーで、WebSocketをサポートしていないブラウザーでも別の非同期通信技術(Flash SocketやLong Pollingなど)を使って通信できます。Socket-IOは以下のようにしてインストールします。


$npm install socket.io 


 実際の開発ではWebSocket ServerかSocket-IOを選択して実装することになりますが、今回の場合、WebSocketが利用できるiPhone 4にターゲットを絞っており、かつレスポンススピードが要求されることから、Socket-IOでなくWebSocket Serverを採用しました。

 WebSocketのクライアント実装用ライブラリーとして、「node-websocket-client」があります。

 Webアプリ自体には必要になりませんが、node.jsでWebSocketのクライアント/サーバー間の接続をテストするときに役立ちます。


$npm install  websocket-client


この連載の記事

一覧へ

この記事の編集者は以下の記事をオススメしています