Service registry patterns
One of the key aspects of discovering services in a distributed system is service registry. The service registry is just a database that has all the network locations of service instances. As it contains crucial information, it must be highly available and stay up to date on an efficient system. Based on the system clients (in our case, API Gateway), we can even cache network locations obtained from the service registry. However, it must be updated on a daily basis, otherwise clients won't be able to discover service instances and communicate per service. A service registry, in order to be highly available, consists of clusters where a replication protocol is used to maintain consistency. The service registry saves the metadata of microservice instances, which includes things such as actual locations, host ports, communication protocol, and so on. Startup and shutdown processes of microservices are constantly monitored. In this section, we will look at service registry...