Eureka 使用及常用配置
- ### Eureka server 注册中心
增加依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
在主启动类使用注解
@EnableEurekaServer
配制--服务端同时也是客户端
# 应用名
spring:
application:
name: eurekaserver
# freemarker:
# prefer-file-system-access: false
# 服务端口
server:
port: 8761
eureka:
# instance:
# 以IP:端口方式定位
# prefer-ip-address: true
# eureka.instance.instance-id: 主机名:应用名:端口号
# eureka主机名
# hostname: 127.0.0.1
# 关闭注册中心的自我保护模式,开发环境可以关闭
server:
enable-self-preservation: false
client:
# 是否从eureka获取注册信息
fetch-registry: false
# 是否注册到eureka(eureka本身是不需要再注册到自己的)(单机环境)
register-with-eureka: false
service-url:
# 设置注册服务器地址,开发测试时注册一个,上线服务器多台服务器,两台相互注册,三台两两相互注册 /eureka/
defaultZone: http://localhost:8761/eureka
- ### Eureka client 服务注册
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
主启动类开启eureka客户端
@EnableDiscoveryClient
配制
eureka:
client:
# 是否从eureka获取注册信息
fetch-registry: true
# 是否注册到eureka(eureka本身是不需要再注册到自己的)(单机环境)
register-with-eureka: true
service-url:
# 设置注册服务器地址,开发测试时注册一个,上线服务器多台服务器
defaultZone: http://client:8761/eureka/
# instance:
# 以IP:端口方式定位
# prefer-ip-address: true
# eureka.instance.instance-id: 主机名:应用名:端口号
# eureka主机名
# hostname: 127.0.0.1
常用配置说明:
配置参数 | 默认值 | 说明 |
服务注册中心配置 | Bean类:org.springframework.cloud.netflix.eureka.server.EurekaServerConfigBean | |
eureka.server.enable-self-preservation | false | 关闭注册中心的保护机制,Eureka 会统计15分钟之内心跳失败的比例低于85%将会触发保护机制,不剔除服务提供者,如果关闭服务注册中心将不可用的实例正确剔除 |
服务实例类配置 | Bean类:org.springframework.cloud.netflix.eureka.EurekaInstanceConfigBean | |
eureka.instance.prefer-ip-address | false | 不使用主机名来定义注册中心的地址,而使用IP地址的形式,如果设置了
eureka.instance.ip-address 属性,则使用该属性配置的IP,否则自动获取除环路IP外的第一个IP地址 |
eureka.instance.ip-address | IP地址 | |
eureka.instance.hostname | 设置当前实例的主机名称 | |
eureka.instance.appname | 服务名,默认取 spring.application.name 配置值,如果没有则为 unknown | |
eureka.instance.lease-renewal-interval-in-seconds | 30 | 定义服务续约任务(心跳)的调用间隔,单位:秒 |
eureka.instance.lease-expiration-duration-in-seconds | 90 | 定义服务失效的时间,单位:秒 |
eureka.instance.status-page-url-path | /info | 状态页面的URL,相对路径,默认使用 HTTP 访问,如果需要使用 HTTPS则需要使用绝对路径配置 |
eureka.instance.status-page-url | 状态页面的URL,绝对路径 | |
eureka.instance.health-check-url-path | /health | 健康检查页面的URL,相对路径,默认使用 HTTP 访问,如果需要使用 HTTPS则需要使用绝对路径配置 |
eureka.instance.health-check-url | 健康检查页面的URL,绝对路径 | |
服务注册类配置 | Bean类:org.springframework.cloud.netflix.eureka.EurekaClientConfigBean | |
eureka.client.service-url. | 指定服务注册中心地址,类型为 HashMap,并设置有一组默认值,默认的Key为 defaultZone;默认的Value为 http://localhost:8761/eureka ,如果服务注册中心为高可用集群时,多个注册中心地址以逗号分隔。
如果服务注册中心加入了安全验证,这里配置的地址格式为: http:// |
|
eureka.client.fetch-registery | true | 检索服务 |
eureka.client.registery-fetch-interval-seconds | 30 | 从Eureka服务器端获取注册信息的间隔时间,单位:秒 |
eureka.client.register-with-eureka | true | 启动服务注册 |
eureka.client.eureka-server-connect-timeout-seconds | 5 | 连接 Eureka Server 的超时时间,单位:秒 |
eureka.client.eureka-server-read-timeout-seconds | 8 | 读取 Eureka Server 信息的超时时间,单位:秒 |
eureka.client.filter-only-up-instances | true | 获取实例时是否过滤,只保留UP状态的实例 |
eureka.client.eureka-connection-idle-timeout-seconds | 30 | Eureka 服务端连接空闲关闭时间,单位:秒 |
eureka.client.eureka-server-total-connections | 200 | 从Eureka 客户端到所有Eureka服务端的连接总数 |
eureka.client.eureka-server-total-connections-per-host | 50 | 从Eureka客户端到每个Eureka服务主机的连接总数 |
https://www.cnblogs.com/li3807/p/7282492.html