Heroku, the popular cloud application platform, may not be quite as fast today as it was three years ago. Yesterday, Rap Genius‘ James Somers , posted a widely read blog post, arguing that Heroku had quietly changed the way it distributes tasks from Ruby on Rails apps across the Amazon EC2 machines it makes available to its users at some point in the last few years without alerting developers of this change. Instead of intelligently routing requests to the next available server, as Heroku did in its early days, Somers argued that it now distributes requests randomly, resulting in increased queuing times. Today, Heroku’s general manager Oren Teich admitted that this is indeed the case.
“We failed to explain how our product works,” Teich wrote this evening. “We failed to help our customers scale. We failed our community at large. I want to personally apologize, and commit to resolving this issue.” According to him, Heroku users have indeed “experienced a degradation in performance over the past 3 years as we have scaled.” Heroku’s goal, he wrote, is to be the best platform for all developers. “In this case, we did not succeed. But we will make it right.”
Tomorrow, Teich promises, the company will post an in-depth technical review and the company will also soon provide developers with a clearer picture of what their apps’ queue of web requests really looks like. He also promises that Heroku will update its documentation and give developers tools to understand how to improve the performance of their apps.
The degraded performance is especially visible for sites like Rap Genius, which use a large amount of so-called Heroku “dynos,” which are essentially customized on-demand Amazon EC2 instances (there are web and worker dynos, but the problem here only seems to affect the web dynos). In its current documentation, Heroku implies that it uses “intelligent scaling” to route web requests to the next available machine. As Somers discovered, however, the distribution is actually random, which means that many requests can end up in a queue even though there are dynos available that are currently idle.
Heroku charges $35 per month for each of these and the quickly growing Rap Genius currently pays about $20,000 per month to run most of its critical its infrastructure on the platform. For a very in-depth look at how Rap Genius uses Heroku and how Somers figured out that Heroku, take some time out of your busy schedule and read his post here.
Heroku is the first and best multi-language cloud application platform, or platform-as-a-service. Heroku allows developers to deploy, scale, and manage their apps without needing to think about servers or systems administration. Over one million applications have been deployed to Heroku.
Rap Genius is your guide to the meaning of rap lyrics You can listen to songs, read their lyrics, and click the lines that interest you for pop-up explanations – we have thousands of canonical rap songs explained (2Pac, Notorious B.I.G., Jay-Z – even the beginning of the Torah..) Our aim is not to translate rap into “nerdspeak”, but rather to critique rap as poetry Anyone can create an account and start explaining rap. Highlight any line to explain it yourself, suggest...