Implementing Distributed System Scenarios
So far, we have covered most high-level topics related to microservice development. You have learned how to use service discovery and deploy your services, establish synchronous and asynchronous communication, and collect service telemetry data and use it to drive the reliability of the system. In the last part of the book, we are going to dive into more advanced scenarios and problems of microservice development that may arise when building complex applications and systems. In this chapter, we will learn how microservices can coordinate with each other to solve some problems such as allocating tasks between themselves.
We are going to cover the following topics:
- Introduction to distributed system problems
- Distributed system tools
- Implementing leader election with HashiCorp Consul
- Distributed system best practices
We will use the microservices we created in the previous chapter to illustrate how to...