Amazon Web Services (AWS) hosting offers a great flexibility in the configuration of a computer platform, where each of the resources involved (CPU power, storage, bandwidth,etc.) can be independently configured.
Besides, the cost of the service is a function of the use of resources (pay as you go). Thus, a server is only charged for the hours that it has been active, and the cost of the storage depends on the number of I/O transactions performed.
These characteristics make AWS very different from the service offered by other hosting providers, where the user can choose among a limited set of server configurations, at a fixed monthly cost.
But this also means that the complexity involved in the configuration of the service is higher for AWS. A monitoring service is also required to be able to detect and correct unexpected peaks in resource consumption, to avoid incurring in excessive costs.
Nevertheless, it is worth considering AWS as an alternative to more traditional VPS platforms, when it comes to setting up a platform for a web service that might need to be scaled as the use of the service grows.
This post is an overview of the main considerations and caveats that need to be taken into account in the setup of a platform on AWS.