|NO.Z.00406|——————————|CloudNative|——|KuberNetes&CI/CD.V44|——|Jenkins.v10|SpringCloud_Eureka.v04|

一、到底要不要使用zuul和ConfigServer
### --- ConfigServer

~~~     # 用来保存每个服务的配置信息的:
~~~     Redis、rabbit、MySQL、第三方服务的地址信息是什么
~~~     在k8s配置中心中是有configmap的配置机制的
~~~     # 若是使用ConfigServer的话的调用链就会更长:
~~~     服务启动调用就会更长;
~~~     服务启动的时候就需要连接到ConfigServer,
~~~     ConfigServer需要连接到后端的存储git或者MySQL,把它的配置信息拉取过来,
~~~     这个配置信息又被service缓存到本地,然后服务启动的时候会读取到这个配置文件,然后再启动。
~~~     # 若是服务启动的时候,后端的存储或者MySQL宕机,在这个宕机的同时;
~~~     若是这个服务进行滚动发布,或者重启,就会读取不到这个配置文件。
~~~     因为在容器中是不会缓存任何的配置文件,下载配置文件,下次重启的时候会丢失的,
~~~     下次重启是没有的。这样服务启动后找不到配置文件,造成服务启动不起来。
~~~     而且这种调用链是比较长的;若是网络出现问题,这个服务启动会非常长。
~~~     服务启动非常长,健康检查配置时间不够,会造成服务启动不起来。
~~~     # 在新项目中:
~~~     ConfigServer逐渐下掉
### --- 引入ConfigServer解决的问题

~~~     解决的是生产环境,开发环境,测试环境调用的第三方服务的地址是不一样的,
~~~     需要ConfigServer区分它们之间的配置。
~~~     若是使用service,可以使用统一的service名,通过更改serviceendpoints地址,
~~~     就实现了不同环境去调用不同的组件,来实现不同服务。
### --- 有三种方式去管理:

~~~     # 第一种:环境变量方式:
~~~     服务启动使用redis,rabbit,MySQL都是以环境变量的方式注入进去的。
~~~     这样就可以不使用ConfigServer,启动速度非常快,
~~~     也不会出现ConfigServer宕机而导致服务启动不起来的弊端
~~~     # 第二种:service:
~~~     使用service代理外部应用;若是MySQL部署在宿主机上;
~~~     在单独的一个namespace创建一个service;
~~~     这个service通过endpoints的方式代理外部服务的方式代理到MySQL。
~~~     这样就可以统一它的配置文件。
~~~     # 第三种:configmap:
~~~     使用configmap管理配置文件,和ConfigServer没什么区别。
~~~     把配置写到configmap,把configmap挂载到容器中,也是以文件形式挂载的,
~~~     这样也就可以读取到配置。和ConfigServer相比少了一层调用configserver的过程,
~~~     启动速度也是比较快的。但是这种情况需要维护很多个configmap。
### --- zuul:

~~~     在k8s中;是安装ingress的,
~~~     若是不适用zuul;zuul实现的逻辑都需要在ingress中配置。
~~~     ingress配置路由也是简单的,只需要生成yaml文件就可以部署
~~~     但是若是后端服务比较多的话,就需要配置很多条ingress。
### --- zuul和ConfigServer到底如何使用

~~~     这样开发的工作量就减少了,运维的工作量就增加了。
~~~     这个区分与到底要把这个工作量分给谁,再去决定到底要不要去用ConfigServer和zuul的
~~~     建议是可以使用zuul的,ConfigServer可以不用

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on   yanqi_vip  阅读(27)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示