Erlang / Erlang Advanced Interview questions
What is EPMD and what role does it play in distributed Erlang?
EPMD (Erlang Port Mapper Daemon) is a small, lightweight process that runs once per host and acts as a name-to-port lookup service for Erlang nodes on that machine. Each node, on startup, registers its name and the TCP port it's listening on with the local EPMD; other nodes trying to connect first ask EPMD "what port is node X on?" before opening the actual inter-node connection.
sequenceDiagram
participant NodeA
participant EPMD
participant NodeB
NodeB->>EPMD: register(nodeb, Port)
NodeA->>EPMD: lookup(nodeb)
EPMD-->>NodeA: Port
NodeA->>NodeB: connect on Port
EPMD itself carries no message traffic between nodes — it's purely a directory service, running on a well-known port (4369) so nodes only need to know a hostname, not a specific port, to find each other. Losing EPMD after nodes are already connected doesn't drop those connections; it only affects new nodes trying to discover an existing one.
Invest now in Acorns!!! 🚀
Join Acorns and get your $5 bonus!
Acorns is a micro-investing app that automatically invests your "spare change" from daily purchases into diversified, expert-built portfolios of ETFs. It is designed for beginners, allowing you to start investing with as little as $5. The service automates saving and investing. Disclosure: I may receive a referral bonus.
Invest now!!! Get Free equity stock (US, UK only)!
Use Robinhood app to invest in stocks. It is safe and secure. Use the Referral link to claim your free stock when you sign up!.
The Robinhood app makes it easy to trade stocks, crypto and more.
Webull! Receive free stock by signing up using the link: Webull signup.
More Related questions...
