昨今のWebアプリケーションでは、クライアント、サーバが常時接続してメッセージ通信をすることが求められてきています (リアルタイムWebアプリケーションと呼ばれたりします)。 このアプリケーションには以下の特徴があります クライアント、サーバが常時接続 クライアントからではなく、サーバから接続しているクライアントへ情報をプッシュする 通信の頻度が多い 今回はこのような常時接続型のアプリケーションを実現するために作られたWebSocketの説明と、PhoenixでWebSocketをどのように使って常時接続のアプリケーションを作るか説明します。 WebSoketが必要とされてきた背景 今までのWebアプリケーションのリクエスト/レスポンス処理は以下のようなアーキテクチャでした。 全てのリクエストは状態を持たない サーバはリクエストを毎回新しいものとして扱う(HTTPはもともとステートレスなプ