Search⌘ K

Eureka: Service Discovery

Explore how Eureka supports service discovery for synchronous microservices, offering features like replication, caching, crash detection, AWS region awareness, and client registration. Learn the basics of configuring the Eureka server and clients with Spring Cloud, and understand how Eureka enhances reliability and load balancing in microservice architectures.

Introduction #

Eureka implements service discovery as we learned in the introduction.

For synchronous communication, microservices have to find out at which port and IP address other microservices can be accessed.

Features #

Let’s discuss some essential characteristics of Eureka.

REST interface #

Eureka has a REST interface.

Microservices can use this interface to register or request information about other microservices.

Replication #

Eureka supports replication.

The information from the Eureka servers is distributed to other servers enabling the system to compensate for the failure of Eureka servers.

In a distributed system, service discovery is essential for communication between microservices. Therefore, service discovery must be implemented in a way that a failure of one server does not cause the entire service discovery to fail.

Cache improved performance #

Due to caches on the client:

  • The performance of Eureka very good.
  • Availability is improved because the information is stored on the client compensating for server failure.
  • The server only sends information to the client about new or deleted microservices and not information about all registered services, communication very efficient.
...