Service Registry provides your apps with an implementation of the Service Discovery pattern, one of the key benefits of a microservice-based architecture. Trying to hand-configure each client of a service or adopt some form of access convention can be difficult and prove to be brittle in production. Instead, your apps can use the Service Registry to dynamically discover and call registered services.
When a client registers with the Service Registry, it provides metadata about itself, such as its host and port. The Registry expects a regular heartbeat message from each service instance. If an instance begins to consistently fail to send the heartbeat, the Service Registry will remove the instance from its registry.
Service Registry is based on Eureka, Netflix's Service Discovery server and client.
See the sample apps in the greeting repository to follow along with code in this section.