From Servers to Services
Are Web servers and RPC servers scalable? Available?
A single server process can only use one machine.
Upgrading the machine causes interruption of service.
If the process or machine fails, the service is no longer reachable.
We improve scalability and availability by replicating the functional components of the service.
(May need to replicate data as well, but save that for later.)
- View the service as made up of a collection of servers.
- Pick a convenient server: if it fails, find another (fail-over).