Eureka学习
github:
项目名:
作用:用于服务注册和发现
基础概念
- Register (服务注册)
当Client向Server注册时,提供自身的元数据,比如IP地址,端口,运行状态等等 - Renew (服务续约)
client默认(每隔30秒发送心跳)进行服务续约,如果超过90未收到 ,Server将剔除client - Fetch Registries (获取服务注册列表信息)
Client从Server中获取服务注册表信息,并将缓存本地。Client和Server默认使用json进行通讯 - Cancel (服务下线)
client发出下线请求,Server将其剔出 - Eviction(服务剔除)
Server 90秒未收到Client信息,将其剔除。
配置
pom.xml
<!--服务器->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<!--客户端->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
server
1.application.yml
server:
port: 8761
eureka:
instance:
hostname: localhost
client:
# 表示是否注册自身到eureka服务器
registerWithEureka: false
# 是否从eureka上获取注册信息
fetchRegistry: false
# 服务器url
serviceUrl:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
2.启动类
注解@EnableEurekaServer
client
1.application.yml
server:
port: 8762
spring:
application:
# 客户端名称
name: eureka-client
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
2.启动类
注解@EnableEurekaClient