Do you know how system architecture changes over time to meet increasing traffic? What does it take to design a hypothetical e-commerce site that scales to millions of users? In real life, you will never create an architecture of that scale from the start. It will be a gradual process. You may start by design a bare minimal site that handles hundreds, perhaps thousands of users.
It will probably look like the following.
Eventually, you arrive at the following architecture with considerable complexity.
Checkout all design evolutions in between and see how estimation changes as well
Reference
Originally published at https://getoasys.io.