エンジニアリング
アナザーエデンにおける非同期オートセーブを用いた通信待ちストレスのないゲーム体験の実現
・ゲームシステムにおけるDBの運用および選定に興味のある方
・クライアント・サーバ間の通信モデルに興味のある方
・KVSやそれをコアに用いたシステムに興味のある方
・AWSの利用経験のある方
得られるで
あろう知見
・非同期通信モデルの長所および制約事項
・クライアントとサーバでデータスキーマを共有することのメリットとデメリット
・スケールアウトするDBMSの特性とその設計と運用の現実
・「事後」にデータチェックを行うためのトークンシステムやログシステムおよびその限界
・KVSを用いた非同期データ同期システムの実装例とその顛末
セッションの内容
アナザーエデンにおいては、一般的なスマートフォンゲームと異なり、ホーム画面がありません
これにより世界観への没入を阻害しないプレイ体験が実現されていますが、そのためにはサーバへの問い合わせ、といったシステム上の制約をできるだけユーザに感じさせないような通信およびデータ保存の仕組みを構築する必要があります
このため、アナザーエデンでは次のような原則に基づいたオートセーブ機構を実装しています
・サーバへの問い合わせはできるだけバックグラウンドで行う
・クライアント上でデータを生成し、基本的にはそれを受け入れる
・サーバ上のビジネスロジックはできるかぎりシンプルなものにする
・クライアントとサーバでデータスキーマを完全に一致させる
・クライアント上のデータ保存のために信頼性の高いKVSを採用する
・サーバ側のDBはクライアントのミラーであることが原則である
・サーバ側で生成したデータについても、一度クライアント側で受入処理を経た上で確定とする
・クライアント上でのデータ改ざん(チート)のリスクについては、サーバから配布する署名やトークンによって一定程度の信頼性を担保する
このセッションでは、上記のような設計を実現するために採用した基盤技術であるLevelDBやDynamoDBおよびflatbuffersについてお話します
また、実際に動作するデモを通じて、それらをどのように組み合わせてオートセーブ機構を実現しているのかについてお話します
講演者プロフィール
鈴木 清人
横浜国立大学工学部電子情報工学科卒。EDAツールベンダ、マーケティング系SaaSベンダ等を経て2013年グリー入社。
グリーでは内製BIシステム、「天と大地と女神の魔法」と「アナザーエデン」を担当。
大規模なトラフィックを捌く経験を求めて入社したものの、なぜか自らトラフィックを作りださねばならない立場に。
直近の「アナザーエデン」では、サーバ・クライアントのデータモデル、通信モデルのほか、アセットパイプラインやプロジェクト体制も含めたゲーム制作・運用システム全体の設計、実装を手がけている。
西田 綾佑
2014年 東京大学大学院 情報理工学系研究科修了
同年 グリー株式会社 入社
Wright Flyer StudiosにてLINEタワーライジングの開発を経て、アナザーエデンの開発を担当。