AWS is aws-ome!

By | November 21, 2019

I love AWS and I am always looking for ways to move my projects to it. Plus I think AWS is a good thing to learn.

I like the challenge of deciding what services to use for my various projects. Be careful though in AWS you can easily set things up things that are expensive. I will try to steer you away from those. All my posts at mySoftwareJourney.com only use the most economical features I can find, so I have done a lot of the work for you. You still need to watch your billing console and make sure you turn off the services you do not use anymore.

AWS can be more intimidating than heroku, mongodB Atlas or shared hosting. For some projects I just recommend using those services instead. For example I use an a2hosting shared account for my wordpress site EmbroideryWareSoftware.com. I also use a2hosting to host many other static sites all under one shared plan. For $15.99 a month it’s great. But when it come to writing my own APIs, forwarding email, serverless functions, speed, AWS is the service to use.

AWS gives you a huge sandbox of tools to setup practically anything, storage, servers, databases, serverless functions….. The list is practically endless and they keep on adding things all the time. You can easily get lost.

They also have a generous one year free tier with some products remaining free forever. I also have a google account for one year and an azure account that was only free for one month. I would not even bother with azure. I never got a chance to use it and the free plan expired. Google has a one year free plan and I might play with it after I have mastered AWS.

So here are some examples of why I love AWS

SES simple email service

You pay $0.10 for every 1,000 emails you send or receive. My previous service, send in blue, was $25 per month for 40,000 emails. That’s $.675 per 1000, six times more. Plus there is the catch they charge you $25 even if you didn’t send any emails. At AWS there is no minimum charge. You pay as you go. Hands down SES is the only service to use. AWS does have a pretty high bar for approval though. You are in a sand box at first and have to validate your domain, test using validated email accounts and then request to be approved to send to the outside. If they have any hint that you intend to spam the internet they will not approve your account. I use them for transactional email only.

EC2 elastic compute cloud with ELB elastic load balancer

There many options to run your server code in. I have accounts at heroku, AWS and google. Heroku is very easy to use but it is slow and expensive. For myAgileStory.com backend I choose an EC2 t2 micro behind an elastic load balancer configured with two availability zones. One of the zones is empty. Why did I use a ELB then? I did this because is was the easiest way to get an HTTPS connection with a free certificate. It is super fast. Much faster than my heroku endpoint. You can skip the ELB by installing certbot on your EC2s nginx server but I found that to be almost impossible to get working. So the ELB, EC2 combination worked great for me. I have been charged only $2.78 for this service last month. Something to consider if you are just playing around.

API Gateway, Lamda functions and dynamoDB

I just started to use API gateway, lamda and dynamoDB so I don’t know the cost yet. In the free tier you get the following 1 million API calls for free, 1 million lamda request free, 25GB on dynamoDB. That is incredible power for no cost.

In closing

Hopefully now you can see why I love AWS. Be careful though you really need to watch what you set up. I always go with the minimum needed, set cost alarms, and turn off anything I am not currently using.

Have fun. AWS is aws-ome!

Category: AWS