It seems like everyone today wants to build the next great scalable web app. And, at least according to Gartner, Amazon Web Services has emerged as the undisputed leading cloud provider where you should build it.
But AWS can look overwhelming. There are now over 40 different AWS services, and many concepts to think about when building your app. AWS provides excellent documentation on each of their services, helpful guides and white papers, reference architectures for common apps, and even a program specially for startups where startups can receive one month free to speak with AWS Cloud Support Engineers, and in select cases, free AWS credits.
But how do you put it all together? What's the relationship between, say, the Elastic Load Balancer (ELB) that you hear about that "just works" and the seemingly unrelated DevOps concept of Service Discovery? When does it make sense to use a non-AWS solution (e.g. using nginx instead of an ELB)?
Also, how do you balance the need to build an app quickly and inexpensively today, but that's scalable for tomorrow?
My goal in this guide is both to answer these questions, and, more importantly, provide an overall framework you can use to think about how to answer these questions.
Read more at Airpair.