A. Introducción Eureka
Eureka tiene tres funciones
1. Registro del servidor : registro de servicios, que es un servidor de Eureka, el registro del servicio y el descubrimiento
2. servidor del proveedor : los proveedores de servicios, se trata de un cliente de Eureka, para proporcionar servicios
3. Consumidor Servidor : servicio al consumidor, es un cliente de Eureka, Servicios al Consumidor
Servicio proceso de consumo:
1. La necesidad de un servidor de registro del servicio de Eureka
2. El proveedor de servicios de Eureka Cliente registrado en el registro de servicios Eureka servidor, será el propietario de la dirección IP, el nombre del servicio enviado al servidor Eureka registro mediante la API REST
3. Los consumidores de servicios, sino también registrados en el registro de servicios Eureka servidor, al mismo tiempo para obtener una lista de registro de servicios, la lista contiene toda la información registrada al centro de servicio, la información contenida en la dirección IP del servicio, para que los consumidores http servicio puede ser proveedores de servicios de consumo de llamadas a distancia a través de la dirección IP
Dos proyectos para la construcción
1. En primer lugar crear un nuevo proyecto Maven
directorio borrado src, modificar el envase es pompón
2. El módulo de Registro de nuevo Eureka Server en nuevos proyectos anteriores
Que has creado, paquete frasco para ser descargado, añadir application.yml archivo
servidor: Puerto: 8761 # interfaz de servidor final Eureka-servidor Eureka: ejemplo: nombre de host: localhost cliente: registerWithEureka: falsa fetchRegistry: false ServiceUrl: defaultzone: http: // {$ eureka.instance.hostname}: $ {} server.port / Eureka /
A continuación, tiene que añadir sobre la clase de entrada @EnableEurekaServer convertir características Eureka Server
org.springframework.boot.SpringApplication importación; org.springframework.boot.autoconfigure.SpringBootApplication importación; org.springframework.cloud.netflix.eureka.server.EnableEurekaServer importación; @SpringBootApplication @EnableEurekaServer EurekaServerApplication public class { public static void Main (args String []) { SpringApplication.run (EurekaServerApplication.class, args); } }
Hasta el momento, Eureka servidores de conjunto se completa con http: // localhost: 8761 para el acceso, pero que aún no han registrado ningún caso
3. Eureka Cliente de escritura
Ibid, crear un nuevo módulo, seleccionar Eureka detección de clientes en el descubrimiento de la nube de primavera
Después de un buen soporte para añadir nueva web en el archivo POM
<Dependency> <GroupId> org.springframework.boot </ groupId> <ArtifactId> resorte de arranque-motor de arranque en la web </ artifactId> </ Dependency>
Añadir un perfil application.yml, el cliente Eureka registrado en el lado del servidor
Eureka: cliente: ServiceUrl: defaultzone: http: // localhost: 8761 / Eureka / servidor: Puerto: 8762 primavera: solicitud: Nombre: Eureka-cliente
función abierta en la entrada @EnableEurekaClient
importación org.springframework.boot.SpringApplication; importación org.springframework.boot.autoconfigure.SpringBootApplication; importación org.springframework.cloud.netflix.eureka.EnableEurekaClient; @SpringBootApplication @EnableEurekaClient público de clase EurekaClientApplication { pública estática vacíos principales (args String []) { SpringApplication.run (. EurekaClientApplication clase , args); } }
Escribe una interfaz de prueba
importación org.springframework.beans.factory.annotation.Value; importación org.springframework.web.bind.annotation.GetMapping; importación org.springframework.web.bind.annotation.RestController; / ** * @author Devin Zhang * @ClassName HelloController * TODO @description * @Date 17/03/2020 14:58 * / @RestController público de clase HelloController { @Value ( "$ {} server.port" ) privado del puerto de cuerdas; @GetMapping ( "/ sayHello" ) pública Cadena sayHello (String msg) { retorno "Hola" + msg + "mi puerto es:" + puerto; } }
En este punto, el cliente Eureka cliente acumulación completa, comience en Eureka servidor puede ver el final del servicio ha sido registrado
Al llamar a http: // localhost :? 8762 / sayHello msg = Devin puede ver la interfaz del cliente también puede ser una visita normal