Primero, bajo el servicio del proveedor, agregue una dependencia.
<!-- Eureka -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
<version>1.4.6.RELEASE</version>
</dependency>
En el proveedor yml agregue
#Eureka的配置,服务注册到哪里
eureka:
client:
service-url:
defaultZone: http://localhost:7001/eureka/
clase de inicio principal
package com.kuang.springcloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
@SpringBootApplication
@EnableEurekaClient //在服务启动后自动注册到 eureka服务端
public class DeptApplicationProvider {
public static void main(String[] args) {
SpringApplication.run(DeptApplicationProvider.class,args);
}
}
Inicie el servidor primero,
en el proveedor de inicio
Visita http://localhost:7001/
mecanismo de autoprotección
Algunos proveedores se desconectaron al volver a prestar, eureka iniciará el mecanismo de autoprotección
Necesidad de mejorar la información de seguimiento
Luego agregue el archivo pom del proveedor.
<!-- 完善监控信息 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
Archivo yml del proveedor
#info配置:
info:
app.name: kuangshen-springcloud
company.name: blog.kuangstudy.com
Esto es para mostrar información de la empresa.
mecanismo de autoprotección
mecanismo de visualización de información
Agregue una dependencia al archivo pom en el proveedor
<!-- 完善监控信息 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
yml más uno
#info配置:
info:
app.name: kuangshen-springcloud
company.name: blog.kuangstudy.com
Agregue una anotación a la clase de inicio principal
@EnableDiscoveryClient//Descubrimiento de servicios~
package com.kuang.springcloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
@SpringBootApplication
@EnableEurekaClient //在服务启动后自动注册到 eureka服务端
@EnableDiscoveryClient//服务发现~
public class DeptApplicationProvider_8001 {
public static void main(String[] args) {
SpringApplication.run(DeptApplicationProvider_8001.class,args);
}
}
Escribe el método en el controlador.
@GetMapping("/dept/discover")
//注册进来的微服务~,获取一些消息
public Object discovery(){
//获取微服务列表的清单
List<String> services = client.getServices();
System.out.println("discovery=>services:"+services);
//得到一个具体的微服务信息,通过具体的微服务id,applicationName
List<ServiceInstance> instances = client.getInstances("SPRINGCLOUD-PROVIDER-DEPT");
for (ServiceInstance instance : instances) {
System.out.println(
instance.getHost()+"\t"+
instance.getPort()+"\t"+
instance.getUri()+"\t"+
instance.getServiceId()
);
}
return this.client;
}
Entonces empieza eureka primero
Iniciar acceso de proveedor