このラボでは、Amazon Aurora ServerlessAmazon ElastiCache を使用して、マルチプレイヤーゲーム向けのスケーラブルかつリアルタイムなリーダーボードをビルドする方法を学習します。

Amazon Aurora は AWS の高性能なクラウドネイティブのリレーショナルデータベースサービスであり、MySQL 互換エディションと PostgreSQL 互換エディションの両方があります。Aurora データベースの Serverless サービスでは、オンデマンドの自動スケーリング機能とともに、HTTP 経由でデータベースにアクセスするための高速かつ安全なメソッドである Data API が提供されます。

AWS のフルマネージド型インメモリデータストアサービスである Amazon ElastiCache は、超高速応答が要求されるユースケースを用途としています。ElastiCache では Redis または Memcached を使用でき、ゲームやフィンテックなどの高速アプリケーションに広く利用されています。

Amazon Aurora ServerlessAmazon ElastiCache は双方とも、単独でゲームアプリケーションに広く使用されています。両者をゲームアプリケーションで併用して、トップクラスのスピードを誇るインメモリキャッシュをリレーショナルデータベースの信頼性および柔軟性と組み合わせてみてください。このラボでは、Amazon ElastiCache によって複数のゲームに大量かつ低レイテンシーのリーダーボードチェックを実行し、Amazon Aurora Serverless によってすべての過去データを保存してリーダーボードデータに冗長性を付与します。

ゲームアプリケーションに Amazon Aurora Serverless と Amazon ElastiCache を併用する主な理由は、以下のとおりです。

  • パフォーマンス: ElastiCache の Redis エンジンと Memcached エンジンの双方が、毎秒数十万回のオペレーションに対してミリ秒未満で応答するという最高クラスのパフォーマンスをもたらします。
  • 信頼性: Aurora のストレージレイヤーの 6-way レプリケーションで、データの安全性が確保され、データ損失から保護されます。
  • 柔軟性: 極限のパフォーマンスが要求されるような特定のアクセスパターン向けにキャッシュを設計できると同時に、リレーショナルデータベースをより柔軟なアクセスパターンに利用できます。

AWS 使用経験: 中級

完了までの時間: 3 時間

所要コスト: このチュートリアルにかかる費用は 2 USD 未満です (すべてのサービスを 3 時間稼働させると仮定)*

使用するテクノロジー:

• アクティブな AWS アカウント**
• ブラウザ: Chrome (AWS 推奨)
• Amazon Aurora
• Amazon ElastiCache
• AWS Secrets Manager
• Amazon Cloud9
• Amazon Cognito
• AWS Lambda
• Amazon API Gateway
• AWS SDK for Node.js

*この見積もりでは、ユーザーがチュートリアル全体で推奨される構成に従い、3 時間以内にすべてのリソースを終了することを前提としています。

**過去 24 時間以内に作成されたアカウントには、このプロジェクトに必要なリソースへのアクセス権がまだ付与されていない可能性があります。