当前位置:网站首页 > API设计与开发 > 正文

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



目录:

为什么需要配置中心

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

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

配置中心组件对比选型

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-06-03 13:00:08
  • 51单片机设计计算器(基于51单片机的简易计算器原理图)2025-06-03 13:00:08
  • 51单片机设计100例(51单片机作品)2025-06-03 13:00:08
  • 单片机设计与开发大学组(单片机设计与开发大学组一等奖份量怎么样)2025-06-03 13:00:08
  • 单片机设计实例(单片机设计实例代码)2025-06-03 13:00:08
  • 单片机设计报告怎么写(单片机设计报告怎么写范文)2025-06-03 13:00:08
  • 单片机设计与开发大学组(单片机设计与开发大学组2024)2025-06-03 13:00:08
  • 免费的海报在线(免费海报在线设计生成器)2025-06-03 13:00:08
  • 单片机设计报告目的怎么写(单片机设计报告目的怎么写的)2025-06-03 13:00:08
  • 51单片机设计篮球计时计分器(51单片机设计篮球计时计分器实验报告)2025-06-03 13:00:08
  • 全屏图片