The last way we'll show is called Geodes. The name comes from geographical nodes. It can be used when your service is deployed in multiple regions.
If a fault occurs in one region, you can just redirect the traffic to other, unaffected regions. This will of course make the latency much higher than if you'd made calls to other nodes in the same data center, but usually redirecting less critical users to remote regions is a much better choice than just failing their calls entirely.
Now that you know how to provide availability and fault tolerance through your system's architecture, let's discuss how to integrate its components together.