type
status
date
slug
summary
tags
category
icon
password
书籍
 

理論

グローバルアーキテクチャにおける低レイテンシーの実現

  1. データベースのグローバル分散
      • Amazon DynamoDB Global TablesAmazon Aurora Global Databaseは、複数のAWSリージョンでデータを同期し、低レイテンシーでグローバルなアクセスを実現。データは最寄りのリージョンから即座に取得され、レイテンシーが最小化される。
  1. エッジコンピューティング
      • Lambda@EdgeCloudFront Functionsを使用すると、リクエストが最寄りのAWSエッジロケーションで処理され、バックエンドAPIを通さずにロジックを実行できるため、レイテンシーが劇的に低減される。
  1. トラフィックの最適化
      • AWS Global AcceleratorAmazon Route 53を利用して、ユーザーのリクエストを最寄りのリージョンやエッジロケーションにルーティングし、アプリケーションのパフォーマンスを向上させる。
  1. サーバーレスアーキテクチャ
      • Lambda@EdgeCloudFront Functionsは、インフラの管理を最小限に抑え、スケーラビリティとコスト効率を高めるため、特にトラフィックの多いグローバルアプリケーションに適している。
これらの技術を組み合わせることで、グローバルアーキテクチャにおいて低レイテンシー、スケーラビリティ、効率的な運用が可能になります。

実践

一問道場

質問 #426

あるグローバル企業が、チケットのバーコードを表示するモバイルアプリを運営しています。顧客はアプリのチケットを使ってライブイベントに参加します。イベントのスキャナーはチケットのバーコードを読み取り、バックエンドAPIを呼び出して、データベースのデータとバーコードのデータを照合します。バーコードがスキャンされた後、バックエンドのロジックはデータベースの単一テーブルに書き込み、バーコードを使用済みとしてマークします。
この企業は、AWS上でアプリを展開し、DNS名を api.example.com として設定する必要があります。データベースは世界中の3つのAWSリージョンにホストされます。
どのソリューションが最も低いレイテンシーでこの要件を満たしますか?
A. データベースを Amazon Aurora Global Database クラスターにホストします。バックエンドは、データベースと同じリージョンにある3つの Amazon Elastic Container Service(Amazon ECS)クラスターにホストします。AWS Global Acceleratorでアクセラレータを作成し、リクエストを最寄りのECSクラスターにルーティングします。api.example.com をアクセラレータのエンドポイントにマッピングする Amazon Route 53 レコードを作成します。
B. データベースを Amazon Aurora Global Database クラスターにホストします。バックエンドは、データベースと同じリージョンにある3つの Amazon Elastic Kubernetes Service(Amazon EKS)クラスターにホストします。3つのクラスターをオリジンとして Amazon CloudFront ディストリビューションを作成します。リクエストを最寄りのEKSクラスターにルーティングします。api.example.com を CloudFront ディストリビューションにマッピングする Amazon Route 53 レコードを作成します。
C. データベースを Amazon DynamoDB Global Tables にホストします。Amazon CloudFront ディストリビューションを作成します。CloudFront ディストリビューションに、バーコードを検証するバックエンドロジックを含む CloudFront Function を関連付けます。api.example.com を CloudFront ディストリビューションにマッピングする Amazon Route 53 レコードを作成します。
D. データベースを Amazon DynamoDB Global Tables にホストします。Amazon CloudFront ディストリビューションを作成します。CloudFront ディストリビューションに、バーコードを検証するバックエンドロジックを含む Lambda@Edge 関数を関連付けます。api.example.com を CloudFront ディストリビューションにマッピングする Amazon Route 53 レコードを作成します。

解説

オプションDが正解である理由について、さらに詳細な解説を行います。

1. Amazon DynamoDB Global Tables

  • DynamoDB Global Tablesは、複数のリージョンにわたって自動的にデータを同期し、世界中どこからでもアクセスできるデータベースを提供します。これにより、ユーザーの最寄りのリージョンから迅速にデータを取得することができます。特に、グローバルな分散アプリケーションにおいて、データベースの可用性とレイテンシーを最適化するために非常に有効です。

2. Lambda@Edge

  • Lambda@Edgeは、CloudFrontのエッジロケーションでサーバーレスコードを実行できるAWSサービスです。ユーザーがリクエストを送信すると、そのリクエストは最寄りのエッジロケーションで処理されます。これにより、バックエンドサーバーにリクエストを送る前に、エッジで直接処理が行われるため、レスポンス時間が大幅に短縮され、低レイテンシーを実現できます。
  • このサービスは、APIリクエストに対して即座にロジックを実行することが可能で、バーコードの検証のようなリアルタイムのバックエンド処理を迅速に行えます。特に、データベースとの連携が重要な処理であっても、Lambda@Edgeはエッジでの処理をサポートします。

3. CloudFrontとの統合

  • Amazon CloudFrontは、グローバルなコンテンツ配信ネットワーク(CDN)であり、ユーザーに最寄りのエッジロケーションを通じてコンテンツを提供することで、パフォーマンスを向上させます。Lambda@Edgeは、CloudFrontのリクエスト処理に組み込まれて、リクエストが最寄りのエッジロケーションで処理されるときにコードを実行します。これにより、グローバルなパフォーマンスの向上が実現します。

4. 低レイテンシーと効率性

  • Lambda@Edgeを使用することで、バックエンドAPIやデータベースにアクセスせずに、エッジロケーションで即座に処理を完了させることが可能です。これにより、全体的なレイテンシーが最小限に抑えられ、ユーザーのリクエストに対するレスポンス時間が短縮されます。
  • DynamoDB Global Tablesとの組み合わせにより、データは全リージョンで即座に同期され、必要なデータがユーザーに最寄りのリージョンから迅速に取得されます。

5. スケーラビリティと管理の簡便さ

  • Lambda@Edgeはサーバーレスでスケーラブルなサービスであり、負荷が増加しても自動的にスケールします。インフラの管理を心配することなく、コードを変更するだけでスケーラビリティが確保できます。
  • DynamoDBも完全マネージド型であり、スケーラビリティを気にすることなく使用でき、特にトラフィックの多いグローバルアプリケーションに最適です。

6. 他の選択肢との比較

  • オプションAは、AWS Global Acceleratorを使用して最寄りのECSクラスターにリクエストをルーティングします。Global Acceleratorは低レイテンシーを提供しますが、ECSクラスターはコンテナオーケストレーションが必要で、設定や管理が少し複雑です。また、ECSはAPIリクエストの処理をバックエンドで行うため、Lambda@Edgeに比べてエッジでの直接処理という利点はありません。
  • オプションBは、EKSを使用し、CloudFrontディストリビューションを使ってリクエストをルーティングします。EKSは複雑で、クラスター管理が必要です。特に、Lambda@Edgeのようにエッジで直接バックエンドロジックを処理することができないため、オプションDのように低レイテンシーを実現するのには向いていません。
  • オプションCは、CloudFront Functionを使用していますが、CloudFront Functionは軽量な処理に特化しており、バーコードの検証など複雑なバックエンドロジックには向いていません。Lambda@Edgeの方が、より高度で柔軟なバックエンド処理を実行できるため、オプションDの方が優れています。

結論

オプションDは、DynamoDB Global TablesLambda@Edge を組み合わせることで、グローバルに分散されたデータベースとエッジでの迅速なロジック実行を実現し、最も低レイテンシーで効率的なソリューションを提供します。サーバーレスでスケーラビリティも確保でき、運用負荷も低く、最適な選択肢です。
相关文章
クラウド技術の共有 | AWS Site-to-Site
Lazy loaded image
EKSでのWordPressデプロイ:KCNA-JP試験対策 (Kubernetes実践編)
Lazy loaded image
初心者向け!コンテナ化WordPressサイト構築ガイド(超詳細版)
Lazy loaded image
EFSを活用!AWS EC2でDockerを使ったWordPressサイト構築
Lazy loaded image
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
Lazy loaded image
528-AWS SAP AWS 「理論・実践・一問道場」Migration Evaluator
Lazy loaded image
427-AWS SAP AWS 「理論・実践・一問道場」Secrets Manager425-AWS SAP AWS 「理論・実践・一問道場」SMB経由
Loading...
みなみ
みなみ
一个普通的干饭人🍚
最新发布
35条書面-64問-1
2025年6月13日
TOKYO自習島
2025年6月10日
平成26年秋期 午後問1
2025年6月6日
令和5年秋期 午後問1
2025年6月6日
令和2年秋期 午後問1
2025年6月6日
業務上の規制-87問-1
2025年6月4日
公告

🎉 欢迎访问我的博客 🎉

🙏 感谢您的支持 🙏

📅 本站自 2024年9月1日 建立,致力于分享在 IT・MBA・不动产中介 等领域的学习与实践,并推动 学习会 的自主开展。
📖 博客语言使用比例
🇯🇵 日语 90% 🇨🇳 中文 8% 🇬🇧 英语 2%

📚 主要内容

💻 IT・系统与开发

  • 系统管理:Red Hat 等
  • 容器与编排:Kubernetes、OpenShift
  • 云计算:AWS、IBM Cloud
  • AI 入门:人工智能基础与实践
  • 技术笔记与考证经验

🏠 不动产 × 宅建士

  • 宅建士考试笔记

🎓 MBA 学习笔记

  • 管理学、经济学、财务分析等

🔍 快速查找内容(标签分类)

由于网站目前没有专门的设计,可能会导致查找信息不便。为了更快找到你感兴趣的内容,推荐使用以下标签功能 进行搜索!
📌 定期更新,欢迎常来看看!
📬 有任何建议或想法,也欢迎留言交流!