版本介绍
SpringBoot版本2.1.6.RELEASE
SpringCloud版本Greenwich.SR1
开启注解
@EnableCircuitBreaker
依赖包
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!-- jar包版本管理 -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
eureka.instance.prefer-ip-address
是否开启ip注册,默认false
eureka.instance.instance-id 用来指定实列状态名称,如下图

eureka.instance.lease-renewal-interval-in-seconds
客户端向服务端发送心跳频率,默认30s
eureka.server.enable-self-preservation
是否开启自我保护,线上推荐打开,默认开启:true
eureka.server.renewal-percent-threshold
留存的服务实例低于多少比例进入保护模式,默认0.85D
spring.cloud.inetutils.preferred-networks
优先选择网络地址, 支持正则,1.5.*存在Bug只支持一个,2.0已修复(多网卡使用)
spring.client.registry-fetch-interval-seconds
从eureka服务器注册表中获取注册信息的时间间隔(s),默认为30秒
spring.client.register-with-eureka
是否向服务注册中心注册自己, 默认开启
idea指定启动ip
eureka.instance.ip-address=192.168.133.1
image.png
服务端基本配置
增加注解
@EnableEurekaServer
yml参数配置
server:
port: 8671
eureka:
instance:
# 开启IP注册
prefer-ip-address: true
# 实例ID, 即页面status
instance-id: ${eureka.instance.ip-address}:${server.port}
server:
# 关闭自我保护, 官方推荐线上开启
enable-self-preservation: false
client:
service-url:
defaultZone: http://eureka-server1:${server.port}/eureka/
spring:
application:
# 应用名称
name: eureka-service
客户端依赖配置
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
客户端基本配置
yml配置
server:
port: 9000
eureka:
instance:
# 开启IP注册
prefer-ip-address: true
# 实例ID, 即页面status
instance-id: ${eureka.instance.ip-address}:${server.port}
client:
service-url:
defaultZone: >
http://eureka-server:8671/eureka/,
http://eureka-server1:8671/eureka/
# 应用名称
spring:
application:
name: order-service
通过和运维人员了解,一般情况下阿里内网地址默人为eth0,尤其使用docker之后只有一个内网地址,所以一般情况下只要开启IP注册基本上就没啥问题了
网友评论