SpringCloud中尤里卡组件如何使用

  介绍

SpringCloud中尤里卡组件如何使用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

Eureka 是,Netflix 开发的,一个基于其他服务的,服务注册与发现的组件

它主要包括两个组件:尤里卡服务器和尤里卡客户机

<李>

尤里卡客户:一个Java客户端,用于简化与尤里卡服务器的交互(通常就是微服务中的客户端和服务端)

<李>

尤里卡服务器:提供服务注册和发现的能力(通常就是微服务中的注册中心)

工作结构图:

 SpringCloud中尤里卡组件如何使用“>,</p> <p>各个微服务启动时,会通过尤里卡客户机向尤里卡服务器注册自己,尤里卡服务器会存储该服务的信息</p> <p>也就是说,每个微服务的客户端和服务端,都会注册到尤里卡服务器,这就衍生出了微服务相互识别的话题</p> <ul类= <李>

同步:每个尤里卡服务器同时也是尤里卡客户机(逻辑上的)
多个尤里卡服务器之间通过复制的方式完成服务注册表的同步,形成尤里卡的高可用

<李>

识别:尤里卡客户会缓存尤里卡服务器中的信息
即使所有尤里卡服务器节点都宕掉,服务消费者仍可使用缓存中的信息找到服务提供者<强>(笔者已亲测)

<李>

续约:微服务会周期性(默认30年代)地向尤里卡服务器发送心跳以更新(续约)信息(类似于心跳)

<李>

续期:尤里卡服务器会定期(默认60年代)执行一次失效服务检测功能
它会检查超过一定时间(默认90年代)没有更新的微服务,发现则会注销该微服务节点

春云已经把尤里卡集成在其子项目春云Netflix里面

尤里卡服务器在SpringCloud集成

1. pom文件配置

 & lt; project  xmlns=癶ttp://maven.apache.org/POM/4.0.0"在

& lt; dependencies>
,,,,,& lt; dependency> & lt; !——eureka-server注册与发现依赖——在
,,,,,,,& lt; groupId> org.springframework.cloud
,,,,,,,& lt; artifactId> spring-cloud-starter-eureka-server
,,,,,& lt;/dependency>
,,,,,& lt; dependency> & lt; !——eureka-server安全管理依赖,例如用户名:密码登录——在
,,,,,,,& lt; groupId> org.springframework.boot
,,,,,,,& lt; artifactId> spring-boot-starter-security
,,,,,& lt;/dependency>
,,,& lt;/dependencies>

2 yml配置文件

安全:
  基本的才能:
  ,,,启用:真实
  用户:才能
  ,,,的名字:用户
  ,,,密码:password123
  服务器:
  ,,端口:8761
  尤里卡:
  客户:才能
  ,,,register-with-eureka:假
  ,,,fetch-registry:假
  ,,,服务url:
  ,,,,,defaultZone:, http://user password123@localhost: 8761/尤里卡

3。启动类

 package  com.itmuch.cloud;
  
  import  org.springframework.boot.SpringApplication;
  import  org.springframework.boot.autoconfigure.SpringBootApplication;
  import  org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
  
  @SpringBootApplication
  @EnableEurekaServer
  public  class  EurekaApplication  {
  public 才能;static  void  main (String [], args), {
  ,,,SpringApplication.run (EurekaApplication.class, args);
  ,,}
  }

,,SpringCloud集成尤里卡client 

1. pom文件

 & lt; ? xml  version=?.0“,编码=癠TF-8" ?比;
  & lt; project  xmlns=癶ttp://maven.apache.org/POM/4.0.0", xmlns: xsi=癶ttp://www.w3.org/2001/XMLSchema-instance"
  xsi: schemaLocation=癶ttp://maven.apache.org/POM/4.0.0 , http://maven.apache.org/xsd/maven-4.0.0.xsd"比;
  & lt; modelVersion> 4.0.0
  
  & lt; artifactId> microservice-provider-user
  & lt; packaging> jar
  
  & lt; name> microservice-provider-user
  & lt; description> Demo  project  for  Spring  Boot
  
  & lt; parent>
  & lt; groupId> com.itmuch.cloud
  & lt; artifactId> microservice-spring-cloud
  & lt; version> 0.0.1-SNAPSHOT
  & lt;/parent>
  
  & lt; properties>
  & lt; project.build.sourceEncoding> UTF-8
  & lt; project.reporting.outputEncoding> UTF-8
  & lt; java.version> 1.8 & lt;/java.version>
  & lt;/properties>
  
  & lt; dependencies>
  & lt; dependency>
  & lt; groupId> org.springframework.boot

SpringCloud中尤里卡组件如何使用