0:00 / 0:00
- Recommended by 1 person: 1 in engineering communities.
- An opinion. It argues one side of a question engineers disagree on.
Intermediate. Assumes working knowledge.
51K views6 years ago1 recommendation
Programming languagesDistributed systemsElixir and ErlangConcurrency and parallelismScaling and large-scale architecture
Pusher engineers explain the technical reasons and benefits behind their decision to adopt Elixir for real-time infrastructure.
Pusher is a hosted service with APIs, developer tools and open source libraries that greatly simplify integrating real-time functionality into web and mobile applications. Pusher will automatically scale when required, removing all the pain of setting up and maintaining a secure, real-time infrastructure. Pusher is already trusted to do so by thousands of developers and companies like GitHub, MailChimp, the Financial Times, Buffer and many more. Getting started takes just a few seconds: simply go to pusher.com and create a free account. Happy hacking!Why it's here
1 person recommends thisWhat people say. Recommended as an insightful case study of a company migrating to Elixir for real-time scaling.
u/siriguilloin r/elixir • Mentions
On “I need some help fully understanding the greatness of Elixir and Phoenix”
Please watch this video
[video
it is very clear about the features and why elixir and erlang are special when it comes to handling concurrency, scalability and fault tolerance
Edit: I'll add more details here
1) It was originally built for the telephony industry and they have been tackling the problem the web has before the web existed. BEAM uses an actor model for parallelism and interprocess communication happens through messages, also, data is immutable, that is why you don't need to worry about data getting corrupted because another process changed the memory you are trying to read as you read it.
BEAM schedules processes optimally in the CPU cores, but also, processes have a ti…