> 10 hours of audio uploaded every minute ~ 180 million users / month
But scaling is hard.
SoundCloud was born on Rails It allowed us to iterate real fast and keep code quality up(-ish).
Rails is simple. Controller ActiveRecord Model Database
Rails is simple. Controller ActiveRecord Model Database If you want to write a toy blog engine.
In the real world, it gets messy. Controller ActiveRecord Model Database
In the real world, it gets messy. thin yajl Controller amqp EventMachine haml sc-caching ActiveRecord Model DelayedJobs mysql master/ sc-logging slave adapter Database Memcached lhm nokogiri statsy new relic Real messy.
Scaling Rails is hard(er).
No concurrency? 1) Spawn A LOT of processes.
No concurrency? 1) Spawn A LOT of processes. 2) Make everything a background job
No Virtual Machine? Adapt your deployment to > 1 minute application bootstrap time
No proper Garbage Collection? Get used to restarting processes. Frequently.