Eureka介绍
Eureka
简介
Eureka 是 Netflix 在线影片公司开源的一个服务注册与发现的组件,称为注册发现中心,和其他 Netflix 公司的服务组件(例如负载均衡、熔断器、网关等) 一起,被 Spring Cloud 社区整合为 Spring Cloud Netflix 模块。
SpringCloud Eureka与Zookeeper区别
问:为什么 zookeeper 不适合做注册中心?
CAP 原则又称 CAP 定理,指的是在一个分布式系统中,
一致性(Consistency)
可用性(Availability)
分区容错性(Partition tolerance)(这个特性是不可避免的)
CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。
Spring Cloud 其他注册中心
Consul Nacos
Spring Cloud Eureka 快速入门
1.创建一个Maven项目,删除src
2.该项目下创建一个Maven项目,删除src
3.创建一个SpringBoot项目
默认会加到01-eureka模块下,这里一定要手动添加
自动在01-eureka下的结果:
手动创建的结果:
删除多余文件后,进入pom.xml,修改springboot版本和springcloud版本
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.12.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.SR12</spring-cloud.version>
</properties>
写完后点击右边出现的蓝色m图标,进行下载搭建
默认创建的是application.properties文件,将它改为yml文件
进入yml文件,写入端口号和应用名称
server:
port: 8761 #eureka的默认端口
spring:
application:
name: eureka-server #应用名称
一定要注意格式!!!
错误显示
正确显示:
修改启动类名称,在class后面改完名字后,点击左边的蓝色笔
选中后点击OK
开启Eureka的注册中心的功能
启动后,访问http://localhost:8761/
当前在eureka里面注册的实例
下面创建客户端,在01-eureka模块下创建Spring Boot
添加两个工具
和之前一样修改pom文件,之后改启动名称,改配置文件,都同上
修改yml文件
server:
port: 8080 #客户端的端口无要求
spring:
application:
name: eureka-client-a
#注册的含义:将自己的信息(什么信息ip port等)发送过去(发到哪里)
eureka:
client:
service-url:
defaultZone: http://localhost:8761/eureka
开启客户端功能
@EnableEurekaClient
启动
刷新页面,会出现客户端
在做一个客户端b,重复以上客户端a的操作
将客户端A生成两个实例
两种方法:
1.可以在创建一个SpringBoot,不改名字,只改端口号
2.使用IDEA工具