Hacker News new | ask | show | jobs
by amirmansour 5300 days ago
Your service actually looks very interesting. Would you be able to tell us about your backend? How are you guys making it real-time? And how are you handeling storage?
1 comments

Sure thing! Our backend is horizontally scalable and triply redundant by design. We have a web tier behind an ELB that runs our API (http://dev.librato.com/v1/post/metrics). It's implemented in Sinatra today. We'll probably switch to something more performant in the future, but for now it's cheaper to throw more instances behind the load-balancer and spend our time building out more features in the service.

When metrics come into one of the API instances, they turn around and insert it into a Cassandra cluster that we're running spread across 3 different availability zones with an RF factor of 3, meaning your data is stored in 3 different availability zones.

The "GET" calls to pull data out of our service go through the same API, so as soon as data is written to the cluster, it can be pulled back out. Hence the marketing term "realtime".