2025年配置中心的原理(配置中心设计)

配置中心的原理(配置中心设计)目录 1 为什么需要配置中心 2 配置中心组件对比选型 3 集成 Apollo 4 Apollo 原理 为什么需要配置中心 假如我们的系统要去调用另一个系统的接口 于是我们在配置文件里加了如下一行配置 突然有一天 调用的这个系统地址变了 那么这个时候我们就需要去调整我们配置文件里面的这个地址了 而且调整了之后需要重启才能够生效 在白天的时候流量比较大 不能进行重启 所以只能等到凌晨 1

大家好,我是讯享网,很高兴认识大家。



目录:

为什么需要配置中心

假如我们的系统要去调用另一个系统的接口,于是我们在配置文件里加了如下一行配置。

使用配置中心就能解决这些问题,配置文件修改之后项目不需要进行重启,配置就能生效。而且配置统一进行管理,就算部署了多台机器,也只需要修改一次。

配置中心组件对比选型

Nacos相对于Apollo来说,更轻量,读写性能比Apollo好。但是功能没有Apollo完善,像灰度发布和权限管理这块Nacos是不支持的。在生产环境做分布式部署的话,Apollo部署组件较多,运维成本较高。Nacos就简单多了,只需要部署NacosServer和mysql就可以了。

最终如何选择还是需要根据项目需求和结合实际资源来去决定。

如果你项目用的是Spring Cloud这套架构体系,那么推荐使用Spring Cloud Config,毕竟他们能无缝整合。可能使用起来不是那么方便,很多功能都需要基于git。但是开发整合起来更简单,能节省较多时间。Spring Cloud Config最大的缺点就是性能比较低。三节点读QPS也才20多,写只有5。要是对性能要求比较高那才需要去考虑Nacos或者Apollo。

如果项目使用Spring Cloud Alibaba这套架构体系,那么就推荐使用Nacos,因为Spring Cloud Alibaba中Nacos作为注册中心必须要存在,那么就无需再去整合其它东西进来了,配置中心就直接也使用Nacos。Nacos整体相对简洁,使用起来更方便,功能也比较完善。只是不支持灰度发布和权限管理。

如果你项目对性能有要求,而且需要支持灰度发布和权限管理的功能。或是你就是想用用Apollo,反正手下的人也比较闲。不在乎多一点的人力投入,那么用Apollo也是完全OK。

集成Apollo

我就是属于想用用Apollo,不在乎多花点时间的这种类型。所以接下来就把Apollo集成到项目里面来。

创建数据库
安装Apollo Config Service

1、获取镜像

2、运行镜像

安装Apollo Admin Service

1、获取镜像

2、运行镜像

安装 Apollo Portal

1、获取镜像

2、运行镜像

好用的微服务配置中心 微服务配置中心原理_客户端
讯享网

客户端

2、在配置文件中添加如下配置

3、在Apollo Portal界面中创建一个项目

好用的微服务配置中心 微服务配置中心原理_java_02

好用的微服务配置中心 微服务配置中心原理_微服务架构_03

好用的微服务配置中心 微服务配置中心原理_微服务架构_04

好用的微服务配置中心 微服务配置中心原理_好用的微服务配置中心_05

好用的微服务配置中心 微服务配置中心原理_java_06

好用的微服务配置中心 微服务配置中心原理_好用的微服务配置中心_07

到此Apollo就已经集成完毕,这只是比较简单的用法,还有其他使用方法可以参照官网进行使用。https://github.com/ctripcorp/apollo/wiki/Java客户端使用指南

4、Apollo原理

在整合Apollo过程中我们部署了Config Service、Admin Service和Apollo Portal。最后在我们的项目里引入了一个Apollo的jar包,这个称之为Apollo Client。下图为Apollo的架构图:

好用的微服务配置中心 微服务配置中心原理_客户端_08

其实除了上面的四个模块外,还存在Eureka和Meta Server两个模块,只是这两个模块是和Config Service一块部署的,在同一个JVM进程中。引入Eureka和Meta Server两个模块后,整个架构图就变成了这样的:

好用的微服务配置中心 微服务配置中心原理_客户端_09

小讯
上一篇 2025-05-07 12:23
下一篇 2025-05-08 16:09

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/150792.html