CS262B Reading Summary
Cluster-Based Scalable Network Services
Armando Fox et al.
Summary by Feng Zhou
2/11/2004
Strong points of the paper are:
- The three fundamental requirements for network services are
well-identified. They are incremental scalability and overflow
growth provisioning, 24x7 availability through fault masking and cost
effectiveness. There are now actually implemented by large-scale
services like Google.
- The SNS architecture provides a reusable framework for scalable
services. By paritioning work among a number of
interchangable workers and front-ends, SNS ensures the incremental
scalability of the system. The manager and corresponding manager
stubs and worker stubs enables the system to make informed reactions to
node failures and overload quickly.
- Soft state is an important principle for fault-tolerant
systems. In this paper, different nodes in the system maintain
soft state of other parts of the system and typically use the state as
hints, not as exact info. This simplies system design, shortens
the fast path when no faults occur and ensures correctness when nodes
do fail.
One major flaw.
The SNS uses a single centralized DB to store user profiles.
This DB is prone to become a bottleneck in more complex services.