サービスの情報をお届けすることを目的としたイベントです。ヶ月に1度くらいの頻度で定期開催しています。ソリューションアーキテクトから2つのセッションを実施しました。Shareこんにちは、ゲームソリューションアーキテクトの畑史彦です。サービスの情報をお届けすることを目的としたイベントです。ヶ月に1度くらいの頻度で定期開催しています。髙橋氏より1つ、計2つのセッションを実施しました。Legendsなど成功している多くのビデオゲームでは、プレイヤーがゲームの一部に無料でアクセスできる”Free-to-Play”モデルを採用しています。このようなゲームは、もはや低品質なものではなく、プレミアムな品質を必要とします。スポットインスタンスは実行可能な低コストのコンピューティングオプションを提供します。EKSコンテナのオーケストレーションではプレイヤーへの影響を最小限に抑え、コストを最適化するメカニズムが必要となりますが、そのような場合にはスポットインスタンスの利用がフィットします。スポットインスタンスはAWSクラウドの利用可能な予備のコンピュートキャパシティを提供することで、オンデマンドに比べて大幅な割引価格でご利用が可能です。スポットインスタンスによるコストを最適化によって、これまでと同じ予算でアプリーケーションのスループットを最大10倍にまでスケールできます。スポットインスタンスはフォールトトレラント(障害許容)なワークロードに最適です。マルチプレイヤーゲームサーバも例外ではありません。ゲームサーバの状態は、リアルタイムなプレイヤーの入力によって更新され、サーバは一時的な状態を保持します。ゲームサーバのワークロードは使い捨てになることが多く、スポットインスタンスを利用することでコンピュートにかかるコストを最大90%削減できます。このブログでは、スポットインスタンスを効果的に使用するためのゲームサーバワークロードの設計方法について説明します。簡単に言えば、マルチプレイヤーゲームサーバは現在のキャラクターの位置と状態(主にアニメーション)を更新するためにほとんどの時間を費やします。残りの時間は、戦闘に関するアクションや移動、その他ゲームイベントに関連する画像の更新に費やされます。具体的にゲームサーバのCPUは、クライアントの位置情報を受信し、ゲームステートを計算し、その情報を特定の複数のクライアントに送信するという処理のためにネットワークI/Oを利用します。以上のことから、ゲームサーバのワークロードはカジュアルなマルチプレイヤーゲームには汎用インスタンスタイプ、ハードコアなマルチプレイヤーゲームにはコンピューティング最適化インスタンスタイプが適しています。AWSはコンピューティング最適化(C4およびC5)や汎用(M5)をはじめとした多種多様なインスタンスタイプにおいてスポットインスタンスを提供しています。キャパシティはアベイラビリティゾーン内のインスタンスタイプごとに別々に変動するため、幅広いインスタンスタイプを使用することで同じ価格でより多くのコンピューティング能力を得ることができます。Instancesの開始方法をご覧ください。GameLiftがあります。FleetIQやスポットインスタンスをデプロイします。Rate)をベースとして新しいセッションをゲームサーバに振り分けます。Instances“をご覧ください。(※)スポットインスタンスは空きリソースを提供している特性上、インスタンス需要に応じて中断されることがあります。詳しくはスポットインスタンスの中断をご覧ください。ECSなどのコンテナベースのオーケストレーションによるゲームサーバのデプロイメントパターンを利用することができます。これらのシステムは大量のゲームサーバとしてデプロイされた複数のリージョンにまたがるDockerコンテナを管理します。本ブログの残りのパートではコンテナ化されたゲームサーバソリューションにフォーカスします。コンテナは軽量で、高速に起動し、ベースとなるインスタンスの使用率が向上するという特性があるため、ゲームサーバのワークロードに適しています。スポットインスタンスは、使い捨てのゲームサーバワークロードを実行するための選択肢のひとつです。中断2分前に通知を受け取ることで、中断に備えることができます。CloudWatchによる通知処理の例を2つご紹介します。詳しくはこのブログの後半の「中断のハンドリング」および「ゲームサーバを冗長化するためには?」を参照してください。スポットインスタンスは汎用およびコンピューティング最適化(C4およびC5)などゲームサーバのワークロードに適合するさまざまなEC2インスタンスタイプを提供します。スポットインスタンスは低い中断レートを提供します。スポットインスタンスアドバイザーは過去の履歴に基づいて、中断レートの低いインスタンスタイプを選択するのに役立ちます。スポットインスタンスを使用する場合、中断によるプレイヤーへの影響を回避することが重要です。Server“で公開されているリファレンスアーキテクチャとサンプルコードによって、プレイヤー影響を避けるための戦略についてご紹介します。Drainageを例として挙げます。これにより、ノードのアンスケジューリング(解除)が可能となり、プレイヤーエクスペリエンスに影響を及ぼす可能性がある終了期間(terminationGracePeriodSeconds)にあるノード上で実行されているpodを削除します。その結果、podは正常に終了するシグナルがゲーム内に送信されている間も可動を続けます。Shareこんにちは。ソリューションアーキテクトの吉田です。2017のre:Capイベントを開催しました。直前のご案内にもかかわらず、100名超のお客様にご参加いただき、おかげ様で大盛況のイベントとなりました。ソリューションアーキテクトの畑より、re:Invent期間中に発表されたサービスと機能について解説しました。非常にたくさんのアップデートがあったため簡単な概要レベルのご紹介となりましたが、気になるサービスはぜひブログ記事やAWSドキュメントなどでチェックしてみてください。Dayで行われたブレイクアウトセッションやWorkshop、その他ゲームのお客様にチェックいただきたいセッションの概要についてご紹介しました。各ブレイクアウトセッションのSlideshareやYoutubeのリンクは資料に掲載してますので、ぜひご覧ください。Studiosのゲーム向けのイベントベースのアナリティクス事例”と”Gearbox社のBattlebornでのGameLift導入事例”について取り上げ、海外におけるゲーム開発の現状などにも触れながら詳細を解説しました。機会均等法を順守しています。平等に採用しています。