AWS DevOps Blog

A Sample App For Startups

by Evan Brown | on | in Web app | | Comments

Here’s a use-case we see among startups fairly frequently: you’re announcing a new product or service and your customers want to sign up to be notified when your Cool New Thing is available. This can lead to a period (perhaps just a few hours, but possibly longer) where your sign-up form is bombarded with many thousands (or tens of thousands, or hundreds of thousands!) of eager customers. You want the customer experience to be great: you know you’ll need to scale your site out to accommodate the surge, and you want to scale in when traffic tapers.

AWS Elastic Beanstalk and Amazon DynamoDB are a great fit for this use-case because they make it simple to scale your application and database out and in with traffic. We’ve built a sample application to demonstrate this. The app was built with Python, Flask, and Bootstrap. It’s available on GitHub and includes a 3-part video series to help you get started. The first video will have you running the app in Elastic Beanstalk in fewer than three minutes; the second video will guide you through using the app, exploring its backend components in the AWS Management Console; and the third video walks through the finer points of the application’s architecture and configuration.

We’ll extend the app and video series in the future to take advantage of other services (hint: wouldn’t it be nice to send a simple e-mail to everyone who signed up?)

The Videos

Part 1: Run the App

Part 2: Use the App

Part 3: Understand the App

Update (January 9, 2014): Part 4 of the series was added below:

 

Part 4: Worker Tier