真正开始做了的时候,基于钻研探索的精神。因为视频中和大多数网上帖子中eureka的配置一般只有短短四行(不是夸张。真的是只有四行)。所以我不管是脑抽还是热爱学习,反正是想找找一共eureka配置参数都有什么。。然后顺便写个文章记录下使用过程。
这里有一个特别注意的问题就是cloud 和boot和各种组件的版本问题。我在这提一下因为这个是我踩过的坑~~~所以先提一下。
eureka分两种配置:
1,依赖(我这里用的spring boot1.5.21版本,所以和2以后的不一样):
2,在启动类上添加服务端注解(关于这个注解有的版本哪怕不添加也会默认):
3,在配置文件中配置eureka服务端的相关配置:
这里说到重头戏了,其实必须配置的也就三四条。剩下都是可选项。我会在每一条后面特别声明是否必须配置的。
1,依赖(我这里用的spring boot1.5.21版本,所以和2以后的不一样):
这里要着重说一下,第一个依赖是作为eureka的客户端的依赖。第二个则是feign的依赖,用于服务之间相互调用的。我觉得很有必要所以一起放在这里,如果有的人觉得用不到第二个可以不导入。
2,在启动类上添加客户端注解(关于这个注解有的版本哪怕不添加也会默认):
3,在配置文件中配置eureka客户端的相关配置:
对了,这里有两个注意点:
-更改Eureka更新频率将打破服务器的自我保护功能,生产环境下不建议自定义这些配置。
-eureka.client.healthcheck.enabled=true 只应该在application.yml/properties中设置。如果设置在bootstrap.yml中将会导致一些不良的副作用,例如在Eureka中注册的应用名称是UNKNOWN等。
到这里你们用eureka搭建的boot+cloud微服务已经可以起来啦~~然后此文主要是参考了一个帖子~~那么大佬把eureka的所有属性从官网文档整理出来的~~~膜拜一波~~~然后有兴趣的可以跳转过去看看~~~
eureka参数大全
然后如果有比较了解的亲们或者说我上述观点哪里有偏颇~~欢迎指出~~!!!
喏,手打不易,大家动动小手喜欢分享转发关注评论啥的~~~~
Eureka Server存在三个变量:(registry、readWriteCacheMap、readOnlyCacheMap)保存服务注册信息,默认情况下定时任务每30s将readWriteCacheMap同步至readOnlyCacheMap,每60s清理超过90s未续约的节点,Eureka Client每30s从readOnlyCacheMap更新服务注册信息,而UI则从registry更新服务注册信息。
三级缓存读取顺序:
默认读取只读map,如果只读map没有,则读取读写map,如果读写map也没有,就读取registry本地注册表缓存。
通过 eureka.server.response-cache-update-interval-ms 参数来设置,如果不设置,默认是30秒(每 30s 从二级缓存向三级缓存同步数据),如下图:
结论:在接受客户端注册的时候,服务端会将读写缓存的key清掉,30s后只读缓存从读写缓存拉取数据的时候,该服务列表获取到的是最新的数据。如果客户端下线,同样地,读写缓存也会被清除掉。所以极端情况,最长30s后,客户端才能获取到最新的服务列表。
参考连接:
https://www.cnblogs.com/shihaiming/p/11590748.html
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)