I am seeing a lot of discussions revolving around how good Elixir is. My question is what are some popular websites running Erlang/Elixir in production? And what are the pros and cons of using Erlang in web apps?
I can't speak for Elixir, but one popular piece of technology that I consider very reliable that is built in Erlang is RabbitMQ which underpins a lot of companies' infrastructure.
Sean Moore
Systems Architect, LookFar
Elixir is quite new (all things considered), so its list of success stories is small. This list claims to have many companies using it in production, and if the list is true, it's nice, but with no documentation or citing, it's functionally useless. Puppet Labs on that list has advertised that they are hiring Elixir devs, though, so that one is correct.
Erlang has more representation. As @Jan mentioned, many companies run RabbitMQ as critical infrastructure, and RabbitMQ is probably the most widely used Erlang program. WhatsApp is very vocal about how Erlang let them scale to ludicrous heights with a very small team and small infrastrucutre. They managed to get 3 Million simultaneous connections on a single machine (granted, I think it had 48 cores and 128GB of RAM or something). Apparently, FaceBook also uses it to run its backend for Messenger, thought I think they've since moved to C++.
All of these products have the same base criteria: soft-realitime, very high availability, very high concurrency, small amounts of data exchanged. This is the area where Erlang/Elixir/OTP really shine. The Phoenix web framework makes Websocket support trivial, and it was recently tested up to 2 million concurrent connections.
So if your application has that type of profile, Elixir should be given a hard look. You can do a lot more with much less hardware, achieve huge amounts of uptime and reliability, and the language is a pleasure to work with.