読者です 読者をやめる 読者になる 読者になる

プログラマでありたい

おっさんになっても、プログラマでありつづけたい

マイナー三兄弟なAmazon SNS,SQS,SESを激しくお勧めする。

aws sns sqs ses

 とっても便利なのに、いまいちマイナーなサービス感が漂うAmazon SNS並びにSQSとSESの3兄弟。上手く使いこなせれば、下手なツールをインストールしたりプログラミングしなくても色々なことが出来る優れ物です。名前からしてイマイチどんな機能なのかよく解らないので、簡単に解説してみます。

Amazon Simple Notification(SNS)



 プッシュ型の通知サービスです。2013年1月現在では、HTTP/HTTPS、Eメール、SMSとSQSの4種類があります。つまりプッシュ通知するというところがこのサービスの本質で、通知方法は用途次第ということです。今は4種類ですが、そのうち増える可能性もあるでしょう。(例えば、iPhoneやAndroidへのプッシュ通知とか。)

Amazon Simple Queue Service(Amazon SQS)



 その名の通りキュー・サービスです。前述のSNSがプッシュ型でしたが、こちらは逆にプル型のサービスになります。使い方としては、次のようになります。

送信側
 1.名前指定で、キューの作成(CreateQueue)
 2.メッセージ(キュー)送信(SendMessage)
受信側
 1.名前指定で、キューの作成(CreateQueue)
 2.メッセージの受信(ReceiveMessage)
 3.(必要に応じて)メッセージのロック(ChangeMessageVisibility)
 4.メッセージ内容に応じて、特定の処理
 5.メッセージの削除(DeleteMessage)

メッセージ送信部分を、SNSで作成することも出来ます。

Amazon Simple Email Service(SES)



 いわゆるSMTPサーバの代替サービスです。認証付きのSMTPサーバとして使える他、API経由でのメール送信も行えます。通常のメール送信機能の他に、ウィルス・スパムチェックもしてくれます。さらに素敵なところは、SMTPのレピュテーションを上げる為の努力をAmazonが行なってくれることです。(その代わり、SESのルールに沿って運用する必要があります。)お値段も1,000通辺り10円程度と、SMTPサーバの運用や冗長化を考えるとかなりお得なサービスとなっています。

まとめ



 簡単ながらAmazon SES,SQS,SNSの紹介をしてみました。特にSNSとSQSは組み合わせによって、応用範囲が何十倍も広がります。例えばCloudWatchでサービスを監視しておいて、何かあった時はSNSでSQSやメールで通知。SQSで特定処理をすると言ったことが定石となります。オンプレミスで同様のことを行おうと思うと、通知サービスやキューサービスの可用性を確保するためにかなり重厚な作りになります。それが、恐ろしい低額で利用出来ます。使わなければ損です。
 具体的な使い方は、また紹介させて貰おうと思います。


See Also:
Amazon Simple Email Service(SES)のSMTP機能を使ってみる。メールクライアント編
Amazon Simple Email Service(SES)のSMTP機能を使ってみる。サーバサイド編
Amazon Simple Email Service(SES)のメール送信テスト用機能(Amazon SES Mailbox Simulator)を試してみた
Amazon Simple Queue Service(SQS)の使い方
マルチプロトコルの凄いやつ。Amazon SNS(Simple Notification Service)
AWSで大量メール配信するなら、Amazon SESで決まり


参照:
Amazon Simple Notification Service(メッセージ通知サービス Amazon SNS) | アマゾン ウェブ サービス(AWS 日本語)
Amazon Simple Queue Service ( キュー管理サービス Amazon SQS) | アマゾン ウェブ サービス(AWS 日本語)
Amazon SES(バルクメール配信サービス Amazon Simple Email Service) | アマゾン ウェブ サービス(AWS 日本語)