Enterprise engineering

How do I plan for 100,000 users?

Do not confuse four numbers:

  • DAU — unique users per day; drives transactions per day and storage growth
  • Concurrent sessions — users connected in a window; drives sockets and session counts
  • In-flight requests — handled at the same instant; drives connections, worker pools and backpressure
  • RPS — requests per second; drives CPU, caching, database QPS and external quotas

Model it with a formula: users × actions per minute × API calls per action ÷ 60. Illustration (not a benchmark): 100,000 connected users each acting every 30 seconds is about 3,333 actions/sec; at 4 uncached API calls each that is about 13,333 API requests/sec before retries, bots and background jobs.

Then prove it: baseline → ramp to expected peak → spike → soak → stress beyond the goal → failure injection (Redis down, replica lag, worker halted, object-store timeout). Never claim 100k capacity without a load test and a recovery test at that target. Availability maths: 99.9% allows about 43.2 minutes of downtime per 30-day month; 99.95% about 21.6 minutes.

All guides