ElixirConf 2023 - Andrew Bennett - Erlang Dist Filtering and the WhatsApp Runtime System

Discover how Erlang's dist filtering project enhances security, performance, and debugging in distributed systems. Learn how WhatsApp leverages this technique to optimize its runtime system.

Key takeaways
  • Erlang distribution protocol (dist) is not secure and does not aim to be.
  • Erlang dist filtering project intercepts and rewrites inbound dist operations.
  • Dist filtering can be used for debugging, security, and performance improvements.
  • Loggers are stateful and can be used to audit dist traffic.
  • Handlers can be used to rewrite or redirect dist operations.
  • Spawn request handlers can be used to control remote code execution.
  • Alias sends and registered sends are the most frequent dist operations.
  • Dist filtering can be used to detect unexpected traffic and prevent outages.
  • Whatsapp uses Erlang dist filtering to improve performance and security.