November 2017
Intermediate to advanced
298 pages
7h 10m
English
This type of pattern isn't used often, but it pretty much involves using a service-aware client to discover other services and to load balance between them. The advantage here is that the client can make intelligent decisions about where to connect to and in which manner, but the downside is that this decision making is distributed onto each service and hard to maintain but it is not dependent on a single source of truth (single service registry) that could take down a whole cluster if it fails.
The architecture generally looks something similar to this:

Read now
Unlock full access