Upgrade to Pro — share decks privately, control downloads, hide ads and more …

スマホゲームサーバーのしくみをしってみよう

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

 スマホゲームサーバーのしくみをしってみよう

【サポーターズCoLab勉強会】「スマホゲームサーバーのしくみをしってみよう」の登壇資料です。

Avatar for Takuma Kajikawa

Takuma Kajikawa

October 29, 2018
Tweet

More Decks by Takuma Kajikawa

Other Decks in Programming

Transcript

  1. スマホゲームのゲームサイクル - キャラ育成 → バトル/クエスト → キャラ育成 →.. - シングル

    + マルチプレイモード - マルチプレイではよりリアルタイム性が求められる
  2. 課金モデル - 無料 + アプリ内課金 - ガチャ、スタミナ回復、時短など - 高可用性が求められる -

    ガチャが引きたい時に引けない… - せっかく時短したのにサーバー障害…
  3. データストア - DB (MySQLやPostgreSQLなど) - 永続化データ - KVS (RedisやMemcachedなど) -

    キャッシュ、アクセス頻度が高く消えても問題ない - ログ(BigQueryなど) - 分析用のデータ
  4. ルーム入場からバトル開始まで 1. CL → API: パーティ参加リクエスト 2. API → DB:

    パーティがあるか確認、なければ作成 3. API → CL: Battleサーバーの接続先を返す 4. CL → Battle: ルーム作成リクエスト 5. CL → API: Battle開始
  5. バトル中 1. CL → Battle: コマンドを送信 2. Battle → CL:

    バトル情報を返す 3. Battle → CL: イベント発生を通知
  6. バトル終了 1. CL → Battle: バトル終了リクエスト 2. Battle → CL:

    ルームを削除し、切断 3. CL → API: リザルトのリクエスト 4. CL → API: パーティを解散