《Spring Cloud Netflix》 -- 服务注册和服务发现-Eureka的常用配置

简介: 在微服务架构中,Spring Cloud为基于JVM的云应用开发中的服务发现、负载均衡、断路器、智能路由、配置管理、控制总线等等操作提供了一种简单、快捷的开发方式。

一、版本的说明
Angel版本对应Spring Boot 1.2.x,可以使用Spring Boot 1.3.x;
Brixton版本对应Spring Boot 1.3.x,可以使用Spring Boot 1.4.x;
Camden版本对应Spring Boot 1.4.x,可以使用Spring Boot 1.5.x;
Dalston版本对应Spring Boot 1.5.x

二、应用进行热部署

添加依赖:

<dependency>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-devtools</artifactId>
</dependency>

重启即可!
注意:如果是增加了 jar 包,还是需要关闭重启。

三、 Eureka 常用配置

a) Eureka 的服务监控

添加依赖:

<dependency>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

注意:服务端已经存在该依赖,可以不用添加。

状态页面自定义访问链接

eureka.instance.status-page-url-path=/info

info 自定义

info.build.name=@project.name@
info.build.description=@project.description@
info.build.groupId=@project.groupId@
info.build.artifact=@project.artifactId@
info.build.version=@project.version@

注意:
1、 服务监控依赖于 spring-boot-starter-actuator 这个 jar
2、 注意 management.context-path 的定义
3、 注意 server.servlet-path 的定义
4、 可以直接定义 eureka.instance.status-page-url=http://www.roncoo.com,这个优先级高

b) Eureka 客户端的常用配置

1、 自定义实例 ID

eureka.instance.instanceId=${spring.application.name}:${random.value}

说明:random.value 是随机值,可以确保唯一性。Spring Cloud 里面要求实例 ID 是唯一的

2、 显示 IP 地址

eureka.instance.prefer-ip-address=true

3、 设置拉取服务注册信息时间,默认 60s

eureka.client.registry-fetch-interval-seconds=30

说明:如果要迅速获取服务注册状态,可以缩小该值。比如:网关接口启动需要马上调用

4、 指定续约更新频率,默认是 30s

eureka.instance.lease-renewal-interval-in-seconds=15

说明:可以解决 Eureka 注册服务慢的问题,注意:在生产中,最好坚持使用默认值,因为在服
务器内部有一些计算,他们对续约做出假设。

5、设置过期剔除时间,默认 90s

eureka.instance.lease-expiration-duration-in-seconds=45

说明:表示 eureka server 至上一次收到 client 的心跳之后,等待下一次心跳的超时时间。

如果该值太大,则很可能将流量转发过去的时候,该 instance 已经不存活了。

如果该值设置太小了,则 instance 则很可能因为临时的网络抖动而被摘除掉。

该值至少应该大于 leaseRenewalIntervalInSeconds。

c) Eureka 服务端的配置

1、 指定环境

eureka.environment=dev

2、 指定数据中心

eureka.datacenter=roncoo

说明:如果配置-Deureka.datacenter=cloud,eureka 会知道是在 AWS 云上

3、关闭自我保护模式

eureka.server.enable-self-preservation=false

说明:关闭了面板会出现提示。

4、设置清理无效节点的时间间隔,默认 60000,即是 60s

eureka.server.eviction-interval-timer-in-ms=30000

参考内容:Spring Cloud第一季

相关文章
|
6天前
|
Java API 微服务
【Spring Boot系列】通过OpenAPI规范构建微服务服务接口
【4月更文挑战第5天】通过OpenAPI接口构建Spring Boot服务RestAPI接口
|
12天前
|
SQL Java 数据库连接
(自用)Spring常用配置
(自用)Spring常用配置
16 0
|
5天前
|
存储 安全 Java
第2章 Spring Security 的环境设置与基础配置(2024 最新版)(下)
第2章 Spring Security 的环境设置与基础配置(2024 最新版)(下)
15 0
|
5天前
|
安全 Java 数据库
第2章 Spring Security 的环境设置与基础配置(2024 最新版)(上)
第2章 Spring Security 的环境设置与基础配置(2024 最新版)
28 0
|
6天前
|
安全 Java Spring
Spring Security 5.7 最新配置细节(直接就能用),WebSecurityConfigurerAdapter 已废弃
Spring Security 5.7 最新配置细节(直接就能用),WebSecurityConfigurerAdapter 已废弃
19 0
|
7天前
|
安全 Java 应用服务中间件
江帅帅:Spring Boot 底层级探索系列 03 - 简单配置
江帅帅:Spring Boot 底层级探索系列 03 - 简单配置
24 0
江帅帅:Spring Boot 底层级探索系列 03 - 简单配置
|
8天前
|
负载均衡 Java 开发者
细解微服务架构实践:如何使用Spring Cloud进行Java微服务治理
【4月更文挑战第17天】Spring Cloud是Java微服务治理的首选框架,整合了Eureka(服务发现)、Ribbon(客户端负载均衡)、Hystrix(熔断器)、Zuul(API网关)和Config Server(配置中心)。通过Eureka实现服务注册与发现,Ribbon提供负载均衡,Hystrix实现熔断保护,Zuul作为API网关,Config Server集中管理配置。理解并运用Spring Cloud进行微服务治理是现代Java开发者的关键技能。
|
8天前
|
Java API 对象存储
对象存储OSS产品常见问题之使用Spring Cloud Alibaba情况下文档添加水印如何解决
对象存储OSS是基于互联网的数据存储服务模式,让用户可以安全、可靠地存储大量非结构化数据,如图片、音频、视频、文档等任意类型文件,并通过简单的基于HTTP/HTTPS协议的RESTful API接口进行访问和管理。本帖梳理了用户在实际使用中可能遇到的各种常见问题,涵盖了基础操作、性能优化、安全设置、费用管理、数据备份与恢复、跨区域同步、API接口调用等多个方面。
24 2
|
12天前
|
JSON Java 数据库连接
属性注入掌握:Spring Boot配置属性的高级技巧与最佳实践
属性注入掌握:Spring Boot配置属性的高级技巧与最佳实践
22 1
|
12天前
|
Java 数据库连接 Spring
简化配置,提高灵活性:Spring中的参数化配置技巧
简化配置,提高灵活性:Spring中的参数化配置技巧
19 0