Discovery Client - VidoniJorge/gs-spring-cloud-netflix GitHub Wiki
A continuación, se ejemplificará como configurar un servicio para que implemente un Dicovery Client utilizando el stack de librerías que nos provee Spring.io.
Group: org.springframework.cloud ; artifact: spring-cloud-starter-netflix-eureka-client
Group: org.springframework.boot ; artifact: spring-boot-starter-web
Pasos requeridos para implementar un Discovery Clien en un servicio:
- Configurar dependencias de librerías
- Configurar las propiedades del Cliente
- Configurar la clase que inicializará el Cliente
Para configurar las dependencias solo tenemos que agregar en nuestro archivo gradle o maven las dependencias especificadas anteriormente.
Gradle
dependencies { implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client' compile 'org.springframework.boot:spring-boot-starter-web' }
Maven
<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
Está configuración se tiene que realizar en nuestro archivo application.properties o application.yml.
Configurar el nombre de nuestro cliente
spring.application.name = Nombre con el que se registrara el cliente en el server Eureka.
Server Eureka
eureka.client.serviceUrl.defaultZone = http://localhost:8761/eureka/
indicamos la url de nuestro server Eureka
Propiedades opcionales:
eureka.client.registerWithEureka=true eureka.client.fetchRegistry=true
Una ves configuradas las dependencias y configurado las propiedades de nuestro cliente, solo resta habilitar el Discover Client.
Para eso lo único que tenemos que hacer es agregar la annotation @EnableDiscoveryClient en la clase SpringBootApplication.
Ejemplo:
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; @EnableDiscoveryClient @SpringBootApplication public class EurekaClientBackApplication { public static void main(String[] args) { SpringApplication.run(EurekaClientBackApplication.class, args); } }