How and why we switched from Erlang to Python
- Mixpanel had coded one of their servers using Erlang because of performance requirements.
- After 2 years, it became hard for them to debug downtime & performance issues because they didn't have any Erlang experts on their team.
- They switched to their de-facto language, Python. Having more code clarity & maintainability were the two main reasons for this move.
- For the framework and networking library to scale, Mixpanel used eventlet’s raw WSGI library (instead of Python’s asynchronous I/O) since its”green threads” resemble Erlang’s “actors”.
- For the JSON library they used simplejson coded in C, for roughly a ten times better performance.
- Using the right Python libraries avoided adding more servers horizontally.
Full post here, 5 mins read