Image Courtesy: aws.com
Today I will start this blog series on one of AWS Cloud’s popular services SES. SES or Simple Email Service is a fully managed service which allows you to send emails for transactions, marketing, system generated mails, newsletters and much more. It is a service, which can be utilized to send emails. It also provides notifications for bounces, complaints and rejected emails.
Why to use AWS SES?
- Avoid the hassle of setting up an in-house email server like (Zimbra, ZMailer etc).
- Cost effective: It is way cheaper than other SMTP servers in the market.
- DKIM (DomainKeys Identified Mail) Support: DKIM is a standard that allows senders to sign their email messages and ISPs to use those signatures to verify that those messages are legitimate and have not been modified by a third party in transit.
- Keep track of emails bounce and complaints: It provides you feedback by Email feedback forwarding or Bounce SNS notification and Complaints SNS notification.
- ISP Blocking Resolved: When you send too many emails to 1 ISP then there are scenarios where that ISP blocks your email id; however if you are using AWS SES then you don’t have to worry about this issue.
Why NOT Amazon SES?
1. Sending limit: SES does not allow you to send unlimited mails.
Example:
Sending Quota: send 50000 emails per 24 hour period
Max Send Rate: 14 emails/second
Means you can send only 14 mails per second even if you have system which has capacity to send 200 emails per second. Even though you have an option to raise the limit. Which means that even if your sending limit has ended for one day, you need to wait 24 hours before you can send the remaining. You can also request for more sending capacity from AWS.
2. Verify Every Email: You have to verify every email id from which you want to send emails. But this is a security measure which SES takes care of so that the mail from which you are sending is a valid email id.
3. Verify Domain: If you want to send emails from any email Id from your domain then you have to register your domain with AWS.
4. Non-Production Limits: To start full fledged usage of this SES service you need to migrate to the Production environment, as it restricts you from sending emails to “Non-Verified” email addresses with only a sending capacity of 200 emails per day. However, even in the production environment you are restricted to a limit of 10000 mail/day. Also it takes 24 hours to move from non production to production environment.
What are the different ways to send Emails via AWS SES?
- From AWS management Console: if you want to send only few emails, you can send using AWS console.
- From SES API call : To send emails using API you need to integrate AWS SDK(PHP,JAVA etc) or AWS command line Interface(CLI) to send emails or you can directly call rest API from your code.
- SMTP Interface: If you already have your application ready and you don’t want to make changes in the mail sending code you can use SES SMTP credentials instead of the ones being used currently, also you can integrate it with Mail Application such as Microsoft Outlook.
Is AWS SES too Expensive for Me?
- Using EC2 instances or Elastic Beanstalk: You can send 2000 emails daily for free and henceforth, will be charged $0.10 for every thousand emails.
- Using your system or Own Server: No free emails are available for these users, but they will be charged similarly $0.10 for every thousand emails.
- You are also charged for data moving out from SES.
- You are charged $0.12 per GB of attachments you send with your emails.
Some of our Popular Blogs:
1. Comparing the Top 3 Hadoop Distributions – What’s your Pick?
2. Building a Live AWS Kinesis Application – The Producer Class, Put Constructor & more…
3. Redefining the Retail Industry with Big Data – Stories Capturing the Changes as they Happen
4. Why is Cloud Computing Big Data’s Best Friend? A different Take