[テキスト]
このガイダンスは、開発者がゲーム用のスケーラブルなサーバーレスプッシュ通知メッセージングシステムを構築するのに役立ちます。このアーキテクチャは、プレイヤー固有のイベントメッセージングとプレイヤーグループのバッチメッセージングの両方をサポートするものです。プレイヤーには、ゲームの参加や退出、獲得した実績など、友人のアクティビティを通知できます。開発者は、地理的位置に基づいてゲーム内のキャンペーンやイベントをプレイヤーに通知できます。このガイダンスを使用すると、必要に応じて規制要件を満たすためにメッセージデータを保存することもできます。
注意: [免責事項]
アーキテクチャ図

[テキスト]
ステップ 1
AWS Lambda 関数がデバイスからのリクエストを処理し、それらのリクエストを Amazon API Gateway にマップします。
Well-Architected Pillars

AWS Well-Architected フレームワークは、クラウドでシステムを構築する際に行う決定の長所と短所を理解するのに役立ちます。フレームワークの 6 つの柱により、信頼性が高く、安全かつ効率的で、費用対効果が高く、持続可能なシステムを設計および運用するためのアーキテクチャのベストプラクティスを学ぶことができます。AWS マネジメントコンソールで無料で提供されている AWS Well-Architected Tool を使用し、各柱の一連の質問に回答することで、これらのベストプラクティスに照らしてワークロードを確認できます。
上記のアーキテクチャ図は、Well-Architected のベストプラクティスを念頭に置いて作成されたソリューションの例です。完全に Well-Architected であるためには、可能な限り多くの Well-Architected ベストプラクティスに従う必要があります。
-
オペレーショナルエクセレンス
DynamoDB は、データプレーンとコントロールプレーンのオペレーションを監査する AWS CloudTrail をサポートしているため、問題をすばやく検出できます。Amazon CloudWatch メトリクスを使用してサービスの使用状況を追跡し、このデータを可視化できます。
-
セキュリティ
AWS Identity and Access Management (IAM) では、DynamoDB や Amazon S3 などのリソースアクセスの承認管理を行うことができます。AWS WAF を統合すると、外部からの攻撃を防御したり、AWS CloudTrail でアクティビティを監査したりできます。
-
信頼性
DynamoDB では、ポイントインタイムリカバリとオンデマンドバックアップを実施できます。ユーザーデータをオンラインでバックアップおよび復元できます。DynamoDB と Amazon S3 は、アベイラビリティーゾーンで障害が発生した場合に備えてデータの 3 つのレプリカを保持しているため、ダウンタイム後のサービスのローカリゼーションと復旧が自動的に行われます。グローバルテーブルを使用して DynamoDB 用に複数の AWS リージョンを設定できるため、リージョンで障害が発生した場合の中断を最小限に抑えることができます。
-
パフォーマンス効率
サーバーレスサービスを設定することで、インスタンスレベルの管理を気にすることなく、毎月のユーザー数の増加に合わせてスケールするメッセージサービスを構築できます。さらに、CloudWatch メトリクスは、リクエストの数とレイテンシーをチェックすることでパフォーマンスの問題を追跡します。
-
コストの最適化
大規模なデータ交換を始めとするオンライン分析処理 (OLAP) ワークロードの場合、このガイダンスではデータ圧縮に Amazon S3 と Parquet を使用します。このオプションを使用すると、DynamoDB を直接操作する場合に比べてコストを最適化できます。DynamoDB のリザーブドキャパシティを大規模処理に使用することでコストをさらに最適化できます。
-
持続可能性
DynamoDB オンデマンドキャパシティモードを使用すると、テーブルで実行するデータの読み取りと書き込みのリクエストの正確な数に合わせてスケールできます。オンデマンドキャパシティモードは、不要なリソースの過剰プロビジョニングを回避するのに役立ちます。これにより、すべてのリソース管理をサービス側に任せることができます。
実装リソース

AWS アカウント内で実験および使用するための詳細なガイドが提供されています。ガイダンス構築の各段階 (デプロイ、使用、およびクリーンアップを含む) は、デプロイに向けて準備するために詳細に検討されています。
サンプルコードは出発点です。これは業界で検証済みであり、規範的ではありますが決定的なものではなく、内部を知ることができ、開始に役立ちます。
免責事項
サンプルコード、ソフトウェアライブラリ、コマンドラインツール、概念の実証、テンプレート、またはその他の関連技術 (私たちの担当者から提供される前述のものを含む) は、AWS カスタマーアグリーメント、またはお客様と AWS との間の関連文書契約 (いずれか該当する方) に基づき、AWS コンテンツとしてお客様に提供されるものです。お客様は、この AWS コンテンツを、お客様の本番アカウント、または本番データもしくはその他の重要なデータで使用すべきではありません。お客様は、サンプルコードなどの AWS コンテンツを、お客様固有の品質管理手法および基準に基づいて、本番グレードでの使用に適したテスト、セキュリティ確保、および最適化を行う責任を負います。AWS コンテンツのデプロイには、Amazon EC2 インスタンスの実行や Amazon S3 ストレージの使用など、AWS の課金対象リソースを作成または使用するための AWS 料金が発生する場合があります。
本ガイダンスにおける第三者のサービスまたは組織への言及は、Amazon または AWS と第三者との間の承認、後援、または提携を意味するものではありません。AWS からのガイダンスは技術的な出発点であり、アーキテクチャをデプロイするときにサードパーティのサービスとの統合をカスタマイズできます。