Scaling

Vertical & Horizontal Scaling

Vertical Scaling: Think of it like upgrading your computer. You boost its power by adding more RAM, a faster CPU, or storage. Regarding servers, it means beefing up a single server with more resources. It's simpler but has limits; there's only so much you can upgrade in one machine.

Horizontal Scaling: This is like adding more computers to your network. Instead of upgrading a single server, you add more servers to distribute the load. It's like having a team of computers working together. This approach is more scalable because you can keep adding machines as needed. It's commonly used in distributed systems.

Distributed Systems

Distributed systems involve multiple computers working together to perform complex tasks. They're like a team where each member (computer) has a specific role, but all work towards a common goal. This setup allows more data handling and faster processing than a single machine.

Key features:

  1. Concurrency: Different parts of the system can work at the same time.

  2. Scalability: You can add more computers to boost capacity.

  3. Fault Tolerance: If one machine fails, others pick up the slack.

  4. Resource Sharing: They can share tasks and data efficiently.

Last updated