学习SpringCloud中记录遇到的问题以及重要的知识点
共 2077字,需浏览 5分钟
·
2020-09-30 12:12
点击上方蓝色字体,选择“标星公众号”
优质文章,第一时间送达
pom文件
一开始学习spring cloud时创建项目,通过spring boot 创建多模块的spring cloud组件,在pom文件中添加spring cloud 组件依赖时必须自己添加版本号否则会报错,一开始不知道是什么原因,之前好像是可以不用写版本号的,所以就自己研究了一下pom文件的结构和常用标签的作用。
依赖管理
之后上网上找资料,发现都是通过定义一个parent pom文件来管理所有组件的pom依赖,然后我又发现一个dependencyManagement 标签,这个标签是专门给 父pom文件 提供的一种管理依赖版本号的方式,只提供版本号不会引入jar包,有两种方式管理。
第一种:
通过Spring Cloud自带的pom中引用版本号
第二种:
自定义每个依赖的版本号
之后需要将父pom文件设置为pom打包
再在子pom文件中添加 parent标签
就可以实现 父pom文件统一管理所有的子pom文件的依赖版本了。
在创建新的spring cloud组件时就可以直接添加 parent 标签继承父pom文件的依赖版本,不用在手动编写每一个spring cloud组件的依赖版本号了。
学习参考链接: https://blog.csdn.net/uotail/article/details/84404578.
Eureka Server
配置Eureka Server的yml文件时,由于在测试Eureka Server 时只配置一个Eureka Server,所以我就设置了不会注册到其他的eureka服务器上,我想不注册到其他服务器上应该就不用写server-url.defaultZone了,但是结果服务启动后不停的报错,原因是连接不上 8761端口 http://localhost:8761/eureka ,原来service-url.defaultZone有8761端口这个默认值,如果不写则会默认的去连接这个端口,所以需要自己写一个覆盖。
eureka:
instance:
hostname: replica1 #指定主机地址
client:
fetch-registry: false # 是否从自身拉取注册信息
register-with-eureka: false # 是否将自己也注册到其他eureka节点上。一般设置为true或者默认即可,这样才会在eureka控制台上看到所有的eureka集群列表信息
service-url:
# 注册到另一个注册中心/当做为eureka服务器时,不能不写defaultZone,
# 因为defaultZone有默认设置http://localhost:8761/eureka/,不写会不断的连接8761端口,所以需要覆盖默认的defaultZone
defaultZone: http://replica1:8010/eureka
Eureka Server 的保护机制
Eureka的自我保护机制在测试时需要关闭
server:
# eureka 的自我保护状态:心跳失败的比例,在15分钟内是否超过85%,如果出现了超过的情况,
# Eureka Server会将当前的实例注册信息保护起来,同时提示一个警告,一旦进入保护模式,
# Eureka Server将会尝试保护其服务注册表中的信息,不再删除服务注册表中的数据。也就是不会注销任何微服务
enable-self-preservation: false #关闭保护模式
学习参考链接: https://blog.csdn.net/a897180673/article/details/88412130.
Feign 整合 Hystrix 和 Ribbon
Feign是一个声明式客户端,集成了Hystrix和Ribbon,默认是自动开启Ribbon负载均衡的,而Hystrix需要手动配置开启,在配置文件方面,可以和Hystrix、Ribbon配置时相同。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:
https://blog.csdn.net/TIGERDAYDREAM/article/details/108829926
感谢点赞支持下哈