Shared Resources
Explore the shared resource effect and its impact on distributed system stability, including bottlenecks in service-oriented architectures. Understand shared-nothing architecture benefits and challenges, especially regarding session failover and coordination. Learn to identify scaling effects and strategies to mitigate shared resource contention for improved system resilience.
Shared resource effect
Another scaling effect that can jeopardize stability is the “shared resource” effect. Commonly seen in the guise of a service-oriented architecture or “common services” project, the shared resource is some facility that all members of a horizontally scalable layer need to use. With some application servers, the shared resource will be a cluster manager or a lock manager. When the shared resource gets overloaded, it’ll become a bottleneck limiting capacity. The following figure should give an idea of how the callers can put a hurting on the shared resource.
When the shared resource is redundant and nonexclusive, meaning it can service several of its consumers at once, then there’s no problem. If it saturates, we can add more and scale the bottleneck.
Shared-nothing architecture
The most ...