BlogAWS: Pros and Cons
I recently completed a website that is hosted in aws
About the site
The site linked above uses the .NET + React template that Visual Studio provides. The project is hosted in a docker image that then gets deployed to AWS ElasticBeanstalk. As far as AWS goes, it also utilizes Route 53 for domain hosting and configuration and RDS to host a MySQL database.
Pros
A tool for everything
The pros are pretty obvious, AWS has a tool for just about everything. Whether it be cache, search, database, domains, or application hosting AWS features everything one could need to host and scale their applications.
Speed of development
The time from the start of the application linked above to MVP to being completely hosted on that domain took about 2 weeks. Iterations after that were pretty seamless.
Ability to scale
It is very easy to scale up the power of your database, how many application you have behind a load balancer, and how powerful / how much memory those applications have. It's clear that AWS can easily scale with your business. While these come with costs, so would buying new servers, databases, and memory.
Blue Green Deployments
AWS features the concept of blue / green deployments. This provides several positives for your application. You have 2 application instances (or more) one with the current application code and one with the new application code, one is live and the other is not. With this setup you can deploy to a production environment, qa, and sign off before the application is actually live to the public reducing rollbacks greatly. If you do need to rollback, the other application has your last recent deployment so you just need to switch which application your prod server is pointed to. This setup is great for scaling businesses moving quickly.
Cons
Cost
The minimum costs to host the website run about $27.00 / month. While this is not bad, there are much cheaper options for an identical site and we will probably move the site to Next.JS in the future to save on costs. To be fair to AWS the site was made to learn it's systems so complaining about costs when AWS was going to be used for better or for worse.
Barrier to entry
Some applications within AWS were very easy to understand, while others took a bit of digging. I found the docs themselves to not be the most helpful and turned to Youtube videos of my specific problems.
Conclusion
Overall I think cloud is the future but it just depends on your applications demand whether or not you need to use it. For basic websites I would a tool that is less expensive. For businesses with real growth behind it though, it's a no brainer.