にほんブログ村
AWS には、SNS(Simple Notification Service)、SQS(Simple Queue Service)、SES(Simple Email Service)といった 3 つのサービスがあります。
これらの違いは以下のようになります。
- Amazon SNS:プッシュ型の通知が得意。メール通知、SMS、モバイルプッシュが可能。要領制限があり、長文メッセージには向いていない。
 - Amazon SES:Eメールでの配信が得意。コンテンツ配信に向いているが、メール以外での配信はできない。
 - Amazon SQS:プル型のメッセージ処理が得意。非同期型のメッセージをキューイングする。
 
Amazon SNSとは
Amazon SNS(以下、SNS)は、わざわざそのためだけにサーバーを用意しなくても、SNS サービスを利用することで、アプリケーションからの通知を可能にします。ユーザーが何かを行ったタイミングを起点としてで通知するメッセージングを手軽に実現できます。
具体的な通知の例としては、商品が発送されたタイミンングでの発送完了通知や、フリーマーケットで商品が売れた時の通知などがあります。
またこれだけでなく、登録ユーザー全員に一斉告知のメッセージを送るという使い方もできます。
SNSの特徴
- イベントをトリガーとしてのメッセージ
 
商品の購入、アカウント情報の変更、コンテンツの更新などの利用できます。
- モバイル端末へのプッシュ機能
 
iOS、Android などのスマートフォンに対してプッシュ通知が行えます。
- セキュリティーを確保
 
HTTPS API による通信のセキュアな状態を保つことが可能です。
- サービスとしての利用
 
前払いや最低料金などはなし。完全な従量課金制で使った分しか支払う必要がありません。
Amazon SES とは
Amazon SES (以下、SES)は、AWS が提供するメールサービスです。メールサーバーをわざわざ用意しなくても、SES サービスを利用すれば、メール配信が可能になります。
具合的な使い方としては、マーケティングメールの配信やメールマガジンの配信などがあります。
SES は、導入コストが安いことや、固定費用が掛からず従量課金という点で、企業レベルでの利用だけでなく、個人レベルでの利用にも向いています。
SES の特徴
- 安い導入コスト
 
AWS のアカウントとメールアドレス、利用可能なドメインがあれば利用できます。
- 低価格な料金
 
固定費用や最低料金はなし、従量課金で利用できます。
EC2 でホストされているアプリケーションからの配信の場合、毎月最初の 62,000 通は無料です。その後でも、1,000 通毎に、0.1 USDしかかかりません。
- 高い信頼性
 
SES には、送信したメールが確実に届く様に、信頼性を高める機能があります。送信頻度のコントロールやアドレス偽装対策などです。
Amazon SQS とは
Amazon SQS(以下、SQS)は AWS が提供するキューイングサービスです。アプリケーションの切り離し(疎結合)とスケジューリングといった処理を、AWS のサービスで行えます。
キューとは、メッセージを管理するための入れ物のようなものです。
エンドポイントと呼ばれるURLを介して、キューに入ったメッセージを利用します。
SQS の利用パターン例
- 一回の処理で許容する処理時間を超過しそうな場合
 - 一度に大量のデータ件数を処理する場合
 
キューの種類
キューの種類には、以下の 2種類があります。
処理数が優先なら標準キュー、順序が重要なら FIFO キューといった使い方になります。
- 標準キュー(Stanadrdキュー)
 
ほぼ無制限のトランザクション数(TPS)を処理します。
ただし、メッセージを受け取った時とは異なる順序で配信されることもあります。また、複数の同じメッセージのコピーが配信されることもあります。
- FIFO キュー
 
バッチ処理なしで毎秒最大 300 件、バッチ処理ありで最大3,000件のトランザクション (TPS)をサポートします。また、メッセージが送信または受信された順序が厳密に保持されます (先入れ先出し)。
トランザクション処理は、標準キューより下がります。
SQS 向けの機能
- 可視性タイムアウト
 
設定した期間、重複したメッセージ配信が行われないようにする機能
メッセージは、受信しただけでは削除されず、クライアント側からの明示的な削除指示を受けた際に削除されます。そのため、メッセージの受信中に、たのクライアントが取得してしまう可能性もあります。それを防ぐ機能となります。
デフォルトは30秒で、最大12時間まで設定できます。
- ショートポーリングとロングポーリング
 
キューからのメッセージ取得の際で、対象のキューがない場合、キューに新規登録されるのを一定時間待つ機能。
待機する(メッセージがある場合にレスポンスを返す)のをロングポーリング、待機しない(リクエストを受け取ると、メッセージがあるなしに関わらず、即レスポンスを返す)のをショートポーリングと呼びます。
デフォルトはショートポーリングになります。
- デットレターキュー
 
正常に処理できないデータを別のキュー(デッドレターキュー)に格納する機能
問題のあるメッセージ(処理失敗を1ー1,000回で設定)を分離して、処理が成功しない理由を調べることができるため、デッドレターキューは、アプリケーションやメッセージングシステムのデバッグに役立ちます。
- 遅延キュー
 
キューに送られたメッセージを、一定時間見えなくする機能
- メッセージタイマー
 
個々のメッセージを一定間隔見えなくする機能
メッセージサイズ
キューに格納できるメッセージサイズの最大は256KBとなります。
大きなサイズのデータを扱う際には、S3やDunamoDBに一旦格納し、そこへのパスやキーといったポインターとなる情報を渡すことで対応できます。
この教材を使って勉強してます。
「AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト」
AWSに関連する記事:
- AWSを学ぶ(25)VPCエンドポイントを理解しよう
 - MS Azure を学ぶ (0) 用語比較
 - SSL証明書を簡単に取得する方法 – Wiresharkで証明書を抽出
 - オンラインで簡単に証明書を発行する方法
 - AWS を学ぶ(24)3つのメッセージングサービス
 - AWS を学ぶ(23)CloudFormation を使ってみる
 - AWS を学ぶ(22)CloudFormation とは何か?
 - AWS を学ぶ(21)Elastic Beanstalk って何だろう?
 - AWS を学ぶ(20)AWS Certificate Manager を使ってみる
 - AWS を学ぶ(19)AWS の暗号化サービス
 - AWS を学ぶ(18)CloudFront を使ってみる
 - AWS を学ぶ(17)CloudWatch を使ってみる
 - AWSを学ぶ(16)IAMについて
 - AWSを学ぶ(15)Glacier とは何か?どの様に使うのか?
 - AWSを学ぶ(14)S3とは
 - AWSを学ぶ(13)VPC、EC2、ELB、Route 53 を使ってみる
 - AWSを学ぶ(12)EC2のイメージ取得と起動
 - AWSを学ぶ(11)ストレージサービス
 - AWSを学ぶ(10)RDSとは
 - AWSを学ぶ(9)ELB を使ってみよう
 - AWSを学ぶ(8)CloudFront って何だろう
 - AWSを学ぶ(7)Route 53 について
 - AWSを学ぶ(6)EC2 を使ってみよう
 - AWSを学ぶ(5)EC2の性能とコストの考え方
 - AWSを学ぶ(4)EC2を理解しよう
 
関連する記事:
- Raspberry PiでのPi-Hole設定ガイド
 - Video CC TranslatorでUdemyを快適に学ぶ
 - TimeMachineEditorでMacバックアップを最適化する方法
 - BanBackup でバックアップの自動化
 - Raspberry Pi 4 でサイト間 VPN を作ってみよう
 - 超小型 Bluetooth スピーカー EWA A106
 - カラアゲニスト・パーフェクトガイド(唐揚検定)
 - 任天堂 ゲーム&ウォッチ – マリオゲームで懐かしさを再体験
 - Raspberry pi 4 バックアップ・リストア
 - Apple AirTag を買ってみた
 
最近の記事:
- VirtualBox インストールエラーの解決法
 - 複数の宛先に ping を打つことができる「fping」
 - ネイティブの英語 7 “A cup of joe”
 - 死刑確定囚・野比のび太 – 第二十三話・昇華するのび太の鬱屈
 - 死刑確定囚・野比のび太 – 第二十二話・静の怒りと武の苛立ち
 - 死刑確定囚・野比のび太 – 第二十一話・夫婦間の亀裂とのび太の影響
 - 死刑確定囚・野比のび太 – 第二十話・のび太の初出勤: 恐れと葛藤
 - 死刑確定囚・野比のび太 – 第十九話・ジャイアンとのび太の絆
 - 死刑確定囚・野比のび太 – 第十八話・引きこもりの息子と家族のジレンマ
 - 死刑確定囚・野比のび太 – 第十七話・ドラえもんと30歳ののび太の葛藤
 
