The Webby Awards: Excellence in Application Scalability and Performance
Frank Ocean, Jerry Seinfeld, and Humans of New York are just a few of many honored for outstanding use of the web in this year’s Webby Awards. Established during the web’s infancy in 1996, today The Webby Awards garners millions of voters from over 60 countries around the world every April.
This year, Engine Yard was thrilled to work with The Webby Awards through our partner, Area 17, a full service digital agency, to deploy, scale and manage their “People’s Voice” web application. Hailed by the New York Times as the “Internet’s highest honor,” The Webby Awards is the leading international award honoring excellence on the Internet.
Area 17 needed to deploy the People’s Voice application in such a way that it would be immediately scalable at launch. This required a specific, resilient configuration of clusters that could stay up and running even when a tweet by Justin Bieber sent 67,000 Beliebers to the site. With Engine Yard, Area 17 was able to quickly and easily deploy an application, and an equally solid configuration that was able to serve well over double its actual workload and never utilize the cluster’s maximum possible performance - not even once. Here’s how they did it.
Application Stack
The People’s Voice application is a fairly standard Ruby on Rails application running under Ruby 1.9.3 and PostgreSQL 9.2 using ActiveRecord. The team at Area 17 used rspec along with rspec-rails to develop the app in standard TDD fashion.
Deploying the Application
Environment setup: The production environment for The People’s Voice application consists of five High CPU XL instances (64-bit): three application instances, a database master and one Elasticsearch utility instance.
From staging to production: The initial deployment into staging took approximately one hour, including data import. Shortly thereafter, Area 17 personnel stood up a production cluster, deployed the application and imported data into production. Total time to deploy: Just under two hours.
Customization with Chef: Area 17 needed access to memcached and Elasticsearch. With Engine Yard, memcached is deployed on application instances out-of-the-box. Area 17 was able to deploy Elasticsearch easily by using the ey-cloud-recipes open source repository that Engine Yard maintains.
Traffic analysis: To ensure the application would satisfy heavy loads, Area 17 utilized the Engine Yard Professional Services team to conduct a traffic throughput analysis prior to launch. To read more about how we analyzed traffic, check out the full ebook.
Results
With this setup and intelligent use of caching, the People’s Voice application serves 460,000 page views per day with 94,000 unique visitors (average). New Relic reported that requests averaged 2,860 per minute. Response times averaged between approximately 175ms to 235ms.
The People’s Voice application performs reliably on Engine Yard due to its intelligent use of caching and overall solid build. The application was deployed relatively quickly thanks to Area 17’s experience with the platform and clever architecture design by Engine Yard. So, if you require something similar to The Webbys, even if you don’t have Justin Bieber sending tens of thousands of visitors your way, we can help you. Contact us today for more information.
For more even more on the Webbys, check out the full case study here.
Share your thoughts with @engineyard on Twitter