LoginSignup
1
0

More than 3 years have passed since last update.

AWS SAA対策メモ(構成管理 & メッセージ編)

Last updated at Posted at 2020-07-05

SAA対策の自分用のメモ。
7/13にSAA合格

SOA対策の自分用のメモ。
どんどん更新して加筆修正していく予定。

構成管理系

CloudFormation

インフラリソースを自動でプロビジョニング
テンプレート:プロビジョニングしたいコードを記述(JSON or YAML)
スタック:テンプレートによってプロビジョニングされるリソース
テキストエディタで書くか、CloudFormationデザイナーを使用する

Elastic Beanstalk

webアプリやサービスをデプロイし、実行環境の管理も簡単にできる。

ブルーグリーンデプロイメント
ブルー(実稼働)からグリーン(準備環境)に切り替えるダウンタイムがないリリース方法。RDSをElastic Beanstalk環境外に指定することで可能。

OpsWorks

サーバーの構築の自動化をする
ChefPuppetが利用可能

メッセージ系

SNS

通知サービス

  • パブリッシャ
    メッセージ送信者

  • サブスクライバ
    メッセージ送信者

  • トピック
    アクセスポイント、通信チャンネル

パブリッシャが作成したトピックをサブスクライブすることで、サブスクライバはメッセージを送受信可能。サブスクライバにはHTTP(S), Email, SQS, Lambdaがある。トピックに対して、アプリ側からサブスクライバ宛にメッセージを送るのがパブリッシュ。Lambdaでは、その通知をトリガーに何らかの処理を走らせることができる。

☆SQS

メッセージキューイングサービス
バッチ処理など非同期で分散処理が可能
想定外の大量のトラフィックを一旦SQSのキューに受け入れ、後から処理していく時によく使われる。バッファリングすることで、DBの負荷を減らせる。また、オートスケールの運用負荷も下げることができる。

ロングポーリング
キューが空の場合、メッセージ取得までの待機時間を1~20秒で設定し、メッセージ取得要求の数を減らせる(コストダウン)
逆に、もしキューが空でも取得してしまう(ショートポーリング)と、コストだけかかって意味がない。

可視性タイムアウト
メッセージ取得を他の受信者に一定時間見せないようにする。処理の重複やリクエスト数を減らせる。

キュー種類

  • 標準キュー 最大のスループットだが、配信順序はベストエフォートで配信回数は少なくとも1回
  • FIFOキュー(First In, First Out) 送信されている順番に配信され、1回で確実に処理する

SQSを利用して2つのSQSキューを使用して優先度を変更可能。優先的に処理されるキューとそうではないキューとに振り分ける。例えば有料会員とそうでない会員とか。(プライオリティキュー、セカンダリキュー)

SES

メールの送信サービス

Amazon MQ

オンプレから既存のアプリのメッセージング機能を移行できる

その他

CodeDeploy

アプリのデプロイの自動化。
インプレイスアップグレードに使える。
EC2インスタンスのライブでのアプリケーションの更新。

CodeCommit

コーディングされた内容をGitリポジトリにホスト

CodeBuild

ソースコードをコンパイルし、テストを実行し、デプロイ可能なソフトウェアパッケージを作成できる

CodePipeline

アプリケーションのビルド、テスト、デプロイまでの処理手順を定義・実行

SWF(Simple Workflow Service)

ひとかたまりの処理の状態管理とタスク間の流れの管理サービス。
分散している(非)同期タスクを一連のフローとし、高耐障害性↑↑

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0