1
/
5

メール送信はサーバレスで

じぶん仲介を通じてお問い合わせが入った場合など、メールを送信する必要があるのですが、
その周辺はAWSのサービスを利用しサーバレスな構成にしています。



処理として、メール送信とブラックリスト管理があります。

メール送信処理では、SQSにメール送信に必要な情報を都度送信し、CloudWatchから定期的にLambda関数を実行し、DynamoDBのブラックリストをチェックした上で、SESを通じてメール送信を行います。

ブラックリスト管理では、同じくCloudWatchからLambdaを定期的に実行し、SQSにあるバウンスしたメールについて、DynamoDBに登録しています。

ブラックリストと言っても、弊社にとって困る人を登録しておくリストではありません。AWSのSESではメールが届かない割合が一定を超えるとサービスを止められてしまい、回復にはAWSサポートに再発防止策の説明などをしなければならないので、bounce(不達)となったメールアドレスをリスト管理する必要があるのです。

もちろん、EC2にメールサーバを立ててすべてそこで済ませることも出来るのですが、この構成はAWSを活用した際の現状の最適解のひとつかな、と思っています。

もっといい構成をお使いの方、ぜひ教えてください!

株式会社スタイリィ's job postings

Weekly ranking

Show other rankings