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

いまどきのゲームサーバアーキテクチャ

 いまどきのゲームサーバアーキテクチャ

社内でLTしたときの資料です

Yasutomo Uemori

January 17, 2024
Tweet

More Decks by Yasutomo Uemori

Other Decks in Technology

Transcript

  1. いまどきのステートレス vs ステートフル 簡単なwebアプリケーションなら、事前にデータフォーマットを定義し、リクエストを受けるたびに、DBからユーザの情報を読み取り、処理後DBに書き込みする ことが一般的です。ネットゲームにおいて、強いコンテキストを持ち、ユーザ間の連携も多いです。もし同じモードを採用すると、 DBの処理とロジックの処理の 間、ボトルネックになりやすい、このボトルネックネックは通常キャッシュをレイヤーを追加するだけで解決できないことが多いです 。
 Skynetでゲームホストする場合は、同期的にデータをDBに保存することはおすすめしません、代わりにインメモリのDBに保存したほうが良い。 サービス、アプ

    リロジックやゲームデータは全部メモリで常駐します。もしDBはあなたのフレームワークの一部でしたら、殆どの場合バックアップとして使うべき。データの状態 が変わったもしくは定期的にDBに保存します 。アプリは直接メモリからデータを呼びます。 
 • インフラ技術やミドルウェア、クラウドの発展によりDBのボトルネックは回避されやすくなった • インメモリ=アプリロジックの処理をどこでやるか?が決定的な差異  ➔ インメモリの処理をクライアントに依存しているのが今のステートレスサーバの正体  ➔ ビジネス要件がクライアントのインメモリ処理で事足りている(特にチート対策)
  2. Proxyの採用による固定IPの排除 「Protect Multiplayer Game Servers From DDoS Attacks Using Amazon

    GameLift」より https://aws.amazon.com/jp/blogs/gametech/protect-multiplayer-game-servers-from-ddos-attacks-using-amazon-gamelift-2/