|
|
|
|
|
by bendtherules
3935 days ago
|
|
"WhatsApp doesn’t talk much about its engineering work" - Wrong as hell.
They first talked about this in erlang conf about 3 yrs ago, in 2012. [Youtube Link]( https://www.youtube.com/watch?v=wDk6l3tPBuw ). I hate how tech blogs take a thing thats quite well known and old and spins into a "did you know?" post like it was just unraveled (Oh, maybe your staff just heard about it, doesnt mean no one knows shit.) |
|
There are a lot of startup people here, who work at a startup, bet their time, money, life? on one, and talking about a successful lean startup sold for 19B probably bring feelings of "How come it is not my startup?".
And then for Erlang, it has different syntax, and have to think about concurrency, functional programming, and it is hard for someone used to curly braces. Maybe many tried it, but dismissed it, or bet (time, money, life?) one something else so it is easy to say "But it is not about the platform or technology". Because other conclusions might mean "heck, maybe I made a mistake, I should have that up as well for my problem domain", nobody like to feel that way. Of course, nevermind that engineers from WhatApp have mentioned Erlang was one of their strategic advantages.
Managing 2-3M connections per machine means needing to have fault tolerance (so Erlang is a good choice), but also means managing an order of magnitude less machines! One of the deeper insights we can learn in general is that at scale no matter how cool the concurrency mechanisms, how fast, and new, if they don't go hand in hand with fault isolation then it will just be a very fast system until it starts crashing and its throughput drops to 0. Of course you can do fault isolation with separate servers and OS processes (containers,VMs...) but in this case they do it at a finer grained level.