クラウドを利用したシステムの設計構築がすっかり当たり前になってきて、ユーザ側でもある程度専門的な知識をつけてきている方が増えてきました。
フルスタックテクノロジーコンサルタントとしては、ユーザ側と同レベルの知識だけでは、クライアントにより良い提案をしていくことはできないので、クライアントよりも新しくかつ深い知識を習得することは、必要不可欠です。
ここでは、その知識を証明できるよう、代表的な資格である、AWS 認定 Solutions ArchitectのAssociate levelの取得に向け、私が勉強した内容を公開していきます!
AWSのサービスは百数十を数え、いったい何をどこから手を付けていいかわかりづらいと思いますので、カテゴリごとに体系的に情報を整理したので、是非情報整理の参考にしていただければと思います。なお、ここで書いてあることのみを丸暗記することで試験合格を保証するものではありません。また、AWSのブラックベルトやホワイトペーパーなどの資料もきちんと確認もしてくださいね。
⑪サーバレスについて(1)APIGateway / Lambda / Dynamo DB
通常のWeb三階層構成であれば、クライアント⇒CloudFrontでコンテンツをキャッシュ⇒負荷分散装置⇒Web/APサーバ(EC2インスタンス)⇒データベースサーバ(RDS等)となります。
これを、可能な限りサーバレスの構成とするには、静的コンテンツや動画コンテンツなどは、クライアント⇒CloudFrontでコンテンツをキャッシュ⇒ソースデータはS3に配置とし、 動的なアプリケーションについては、API Gateway⇒Lambda⇒データをDynamo DBに書込み、という形となります。
これが、私のまとめ資料です。(誤字脱字誤謬ご容赦ください)
1.APIGatewayについて
Amazon API Gateway は、APIの作成と管理が簡単にできる完全マネージド型サービスです。
- ステートフル (WebSocket) およびステートレス (REST) API をサポートします。
- AWS Lambda、EC2、もしくはAWS外でパブリックとして公開されているアプリケーションをAPIとして公開することができます。AWS Lambda、Amazon Kinesis、Amazon DynamoDB などの AWS のサービスと統合することができます。
- APIのバージョン管理や、レスポンスのモニタリング、認証等々APIの運用に必要な機能は、マネージドで提供される。
- 性能:Amazon CloudFront を使用したグローバルなエッジロケーションネットワークを活用することにより、エンドユーザーに API リクエストおよびレスポンスのレイテンシーを最小限に抑えることができます
- セキュリティ:IAM ロールとポリシー、AWS Lambda オーソライザー、または Amazon Cognitoを使用して API へのアクセスを許可します
- 料金は、API呼び出し回数に依存し、100万回で$3.5程度
2.Lambdaについて
サーバーをプロビジョニングしたり管理する必要なくコードを実行できる完全マネージド型サービス
- マネージドサービスとして、キャパシティ、スケーリング、デプロイ、耐障害性、監視、ログ管理、セキュリティパッチなどの管理をマネージドで対応される。
- イベントの性能や処理負荷に合わせて、自動的にスケーリングする。
- 料金は、コードが実行される 100 ms ごと、およびコードがトリガーされた回数に対して課金。( コードが実行中でなければ料金はかからない。)
3.Dynamo DBについて
- フルマネージドなNoSQLデータベース(key-valueストアおよびドキュメントデータベース)
- データ操作をGET/PUTでおこなうアプリケーション向け
結果整合性
- デフォルトでは結果整合性…DynamoDB テーブルからの読み込みオペレーションの応答には、最近の書き込みオペレーションの結果が反映されていないことがある。応答には古いデータが含まれる場合があります。少し時間がたってから読み込みリクエストを繰り返すと、応答で最新のデータが返されます
強力な整合性
- 強力な整合性のある読み込み(ConsistentRead パラメータをtrue)をリクエストすると、DynamoDB は成功した以前のすべての書き込みオペレーションからの更新が反映された最新データの応答を返す。
繰り返しになりますが、ここで書いてあることのみを丸暗記することで試験合格を保証するものではありません。また、AWSのブラックベルトやホワイトペーパーなどの資料もきちんと確認もしてくださいね。
0 件のコメント :
コメントを投稿