#アプリケーションサービス
##AWSのアプリケーションサービス
###アプリケーションサービスに共通する基本的な考え方
AWSのアプリケーションサービスはAWSのサーバーリソース上に構築されており、サーバーとアプリケーションのメンテナンスはAWSにまかせている。
そのため、コスト面でも安定性の面でも、自身で構築するより優れていることが多い。
##SQS(Simple Queue Service)
AWSが提供するフルマネージドなメッセージキューイングサービス。
- キュー
- メッセージを管理するための入れ物
- 利用開始時に作成すれば管理する必要なく、エンドポイントと呼ばれるURLを介して利用する
- キューの管理機能
- キューの作成・削除・動作属性などの詳細な設定もあり
- メッセージ機能
- キューに対するメッセージの送信・取得と処理済みのメッセージの削除がある
- 複数のキューをまとめて処理するバッチ用のAPI
- 処理中に他のプロセスから取得できなくするための可視性制御のAPI
StandardキューとFIFOキュー
- Standardキュー
- メッセージの配信順序を保証せず、同一のメッセージが2回配信される可能性がある
- FIFOキュー
- メッセージの配信順序を保証する。秒あたりの処理件数はStandardキューに劣る
###ロングポーリングとショートポーリング
- ロングポーリング
- メッセージがある場合に、即レスポンスを返すが、メッセージがない場合、設定されたタイムアウトギリギリまでレスポンスを返さない
- ショートポーリング
- リクエストを受けるとメッセージの有無に関わらず即レスポンスを返す
###遅延キューとメッセージタイマー
- 遅延キュー
- キューに送られたメッセージを一定の時間見えなくする機能
- メッセージタイマー
- 個別のメッセージに対して一定時間見えなくする機能
##SNS(Simple Notification Service) & SES(Simple Email Service)
- SNS
- プッシュ型の通知サービスで、システムのイベント通知の中核を担う
- SES
- Eメール送信サービスで、SMTPプロトコルを利用する
###SNSの利用について
- トピック
- 情報を管理する単位
- Publisher
- 通知する人。
- Subscriber
- 通知される人。利用するトピック及び受け取るプロトコルを指定
###SNSを使ったイベント通知
- リソースの設定・状態を評価するAWS Configでルールに違反している使われ方が発見された
- CloudWatchでEC2のCPU・ネットワークなどのメトリクスを監視しているときにしきい値を超えた
などといったケースで利用される
###SES
Eメール送信サービス。SMTPプロトコルやAPIを通じたメール送信の他に、Eメールを受信し、S3に保存することも可能
- 送信時にウイルスやマルウェアを検出理sてブロックする機能
- 送信の成功工数や拒否された数を統計的に処理し、配信不能や苦情を管理する機能
- Sender Policy Framework(SPF)やDomainKeys Identified Mail(DKIM)といった認証機能