Thirty Thousand Sends
In Discord's Elixir backend, each server (a "guild") is one process, and every connected client is a session process. Publishing an event means the guild process calls send/2 once per subscribed session. Discord measured a single send/2 at 30 to 70 microseconds, dominated by the sending process being de-scheduled.
A large public guild has 30,000 concurrent sessions on one process. Roughly how long does that guild process take to publish one event to all of them?
Sign in to answer questions and track your progress
Sign In