読書メモ:ゲーム開発が変わる!Google Cloud Platform 実践インフラ構築
ゲーム開発が変わる!Google Cloud Platform 実践インフラ構築 (NextPublishing)
- 作者: 野下洋,芝尾幸一郎,シリコンスタジオ株式会社,長谷川祐介
- 出版社/メーカー: インプレスR&D
- 発売日: 2016/03/04
- メディア: Kindle版
- この商品を含むブログ (1件) を見る
目的
ゲームにおけるクラウドアーキテクチャの実例を知り業務に活かす。
感想
書籍としてまとまっている情報はなかなかないため、ゲームインフラの全体像を掴むのには良いと思いました。 ゲームと言っても、事例は一番クラウドサービスと相性が良いモバイルゲームが中心です。 実例を知るという目的は達成できたと思います。ただ、事例紹介とGCPの機能紹介が大半で内容は薄いかなと思いました。
GCPの概要や他のクラウドサービスとの比較が手厚く書かれているので、GCPを検討している人は参考になると思います。 逆に業務で既に使っている人は新しい知見を得られにくいかもしれないです。
また、2016年の本なので内容は古いです。今はいろんなゲームの実例が資料として公開されているので、補完すると良いと思います。
メモ
ゲームインフラに求められる要件
前提として以下の要件を満たす構成が必要になります。ポイントは柔軟性。 - サーバーに求められる性能が高い - 大規模なゲームだと数百台のサーバ - サーバ管理の仕組みづくりとインフラのコストをいかに抑えるか - ピーク時と平常時に求められる性能の差が大きい - イベント更新時にアクセス数が跳ね上がる - インフラリソースの稼働率を最適化する必要がある - 流行り廃りに応じて規模を変更する必要がある - 爆発的にアクセス数が伸びることがある - ユーザーに飽きられ、縮退していく時もサーバリソースを無駄にしない - 性能の需要予測が難しい - 熟練のエンジニアでもサーバーリソースの予測は難しい - サーバー増減は柔軟にできるように
GCPが他のクラウドサービスに比べて有利な点
一般的なゲーム用途では以下のメリットを得られる場合が多いようです。 特に、料金体系がゲームインフラに合っているのが良いですね。
- Google専用の通信網
- GCPの根幹をなすものであり、一番大きなメリット
- リージョンを越えたプライベートネットワーク
- 高速かつ安定
- ロードバランサ
- 事前準備やウォーミングアップなしで秒間100万リクエスト以上処理可能
- IPベースのグローバルロードバランシング
- VM
- ライブマイグレーション
- メンテナンスが発生した際にインスタンスを稼働させたまま、同一ゾーン内の別サーバへ自動的に移動してくれる
- 料金
- 柔軟に増減させる場合はコストが優位になりやすい
- ユーザビリティ
GCPのゲームインフラユースケース
数あるサービスの中で特にゲームインフラに使われているサービス達
- 実行環境
- Google Compute Engine(GCE): 一般的に使われるIaaS。ベンダロックインもそんなに心配しなくて良い。
- Google App Engine(GAE): HTTP(S)通信をベースとしたゲームに使う。リアルタイム性が強い通信以外で使う。
- Google Kubernetes Engine(GKE): まだ普及していないと書かれているが、現在は主流になりつつあるか。
- 本書には書かれてないが、小規模なゲームならFirebaseやCloud Functionも候補になるか
- ストレージサービス
- ネットワーク
- データ分析
その他のゲーム事例
最近は色々なゲームインフラ事例が公開されているので、参考になります。
- Pokémon GO
- GoogleのCREのサポートが強い。GKE使ってる
- ドラゴンボール レジェンズ
- GoogleのNetworkで安定したグローバル対応。Spannerを使っていることやアプリケーションサーバーを細かく分けているのが特徴
- ミリシタを支える GAE/Go
- GAE/Go。リアルタイム系はやっぱり課題らしい