Chapter 2. How Picnik Uses Cloud Computing: Lessons Learned

Justin Huff

PICNIK.COM IS THE LEADING IN-BROWSER PHOTO EDITOR. Each month, we're serving over 16 million people. Of course, it didn't start that way. When I started at Picnik in January 2007, my first task was to configure the five new servers that our COO had just purchased. Just three years later, those 5 machines have multiplied to 40, and we've added a very healthy dose of Amazon Web Services. Even better, until the end of 2009, the Picnik operations staff consisted of basically one person.

Our use of the cloud started with an instance on which to run QA tests back in May 2007. Our cloud usage changed very little until December of that year, when we started using Amazon's S3 storage offering to store files generated by our users. Several months later, we started using EC2 for some of our image processing.

It's safe to say that our use of the cloud has contributed significantly to our success. However, it wasn't without its hurdles. I'm going to cover the two main areas where Picnik uses the cloud, as well as the problems we've run into along the way.

Picnik runs a pretty typical LAMP (Linux, Apache, MySQL, Python) stack (see Figure 2-1). However, our servers don't do a lot when compared to many other sites. The vast majority of the Picnik experience is actually contained within an Adobe Flash application. This means the server side has to deal primarily with API calls from our client as well as file transfers without the ...

Get Web Operations now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.