タグ

websocketとruby-family-programming-languageに関するnabinnoのブックマーク (3)

  • ElixirとPhoenixでスケールする対戦マッチングシステムを設計する - Qiita

    Elixir Advent Calendar 2016 の22日目です。 mixiグループ Advent Calendar 2016 の22日目も記載しているのでよければそちらもどうぞ マッチングとは ゲームにおいて、プレイヤーとプレイヤーを何らかの条件で(同程度の強さなど)によって結びつけることです。プレイヤーにとって面白いと考えられる対戦を作るのが目標になります。 良い対戦相手を見つけるには待ち時間が必要になります。キューに入ってきた順ではなく、同じ条件のユーザが揃うまで待つ必要があるからです。 そのため、クライアントには非同期で結果を返す必要があります。 Phoenix Channels クライアントへ非同期に結果を返すために、Phoenix の Channels を活用します。WebSocket を抽象化しており、アプリケーション側から容易にメッセージパッシングを行えます。 また、

    ElixirとPhoenixでスケールする対戦マッチングシステムを設計する - Qiita
  • ElixirとPhoenixでWebSocketを使ったChatアプリケーションを作る | DevelopersIO

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

    ElixirとPhoenixでWebSocketを使ったChatアプリケーションを作る | DevelopersIO
  • リアルタイムウェブな観点からElixir / Phoenix について - Qiita

    ここ最近、 [翻訳] Elixir - 次に来る大物Web言語 - Qiita とか 超高速なJSON APIをElixirフレームワークのPhoenixでビルドしてテストしよう | POSTD を読んで気になっていたので、勉強していた。 前提: 自分はシングルページアプリケーションに特化したフロントエンドエンジニアであり、サーバサイドのプロダクション運用にはそこまで強くない。あとこれはここ2日の勉強した日記でもあり誤解や勘違いも多々あると思う。 リアルタイムウェブアプリケーションのためのサーバー Railsの次の時代、リアルタイムウェブの為のウェブフレームワークがあるとしたら、次のような特長をもつと思う。 HTTP, HTTP/2. WebSocket等のプロトコル対応と抽象化 JSON APIに特化 認証系 キャッシュ管理 Viewに関心がない リアルタイムウェブは、その言葉をどう定義

    リアルタイムウェブな観点からElixir / Phoenix について - Qiita
  • 1