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