前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >认识配置中心

认识配置中心

作者头像
星哥玩云
发布2022-09-15 14:18:12
1.3K0
发布2022-09-15 14:18:12
举报
文章被收录于专栏:开源部署开源部署

1、配置中心概述

配置中心是集中管理配置信息的组件。它通常提供配置变更、配置推送、历史版本版本管理、灰度发布、配置变更审计等功能。通过这些功能可以降低分布式系统中管理配置信息的成本,降低因错误的配置信息变更带来可用性下降甚至发生故障的风险。

2、配置信息的管理方式

2.1、使用配置文件

在集中式开发架构中通常使用此种方法。在系统部署到生产环境后,如果需要修改一个配置信息,则需要先登录到服务上修改信息,然后刷新配置文件或重启服务。

这种管理配置信息的方式虽然简单方便,但因为没有集群,所以无法保证服务的高可用。

2.2、使用数据库

网站的系统配置信息大都是存储到数据库的。以MySQL为例,可以把表设计成Key和Value两列,Key是主键,Value是值。

如表:

Key

Value

Sitename

刘先生的个人博客

Email

2571535319@qq.com

Filetype

|.gif|.jpg|.swf|.rar|

Filesize

4096

这种方法需要单独创建表或者字段,且不能主动刷新。所以,这种方式不能很好地满足分布式系统的配置需求。

在分布式系统中,构建 、发布、配置、上线这些过程如果没有一套科学完整的体系,则会非常复杂、烦锁。它涉及将软件包(JAR、WAR等)分发到多台机器中,如果需要修改配置信息,则不能按集中式的管理办法来实施,需要有一个专业的配置中心来实现分布式系统的配置信息变更,比如:线程池、连接池大小、开关、预案、限流配置、功能特性切换、数据源主备容灾切换、路由规则等。

2.3、使用配置中心

在微服务架构下,可以使用诸如Spring Cloud Config、Apollo、Nacos等专业的配置中心来管理配置信息。通过配置中心,可以动态刷新(自动或手动)配置信息到应用程序中,使修改及时生效。

1.jpg
1.jpg

3、对比主流配置中心

开源的配置中心有很多,比如,360的QConf、淘宝的DIamond、百度的Disconf、携程的Apollo、Apache Commons Configuration、Owner、Cfg4J、Spring Cloud Config等。

主流配置中心对比:

功能

Spring Cloud Config

Apollo

Nacos

Disconf

开源时间

2014年9月

2016年5月

2018年6月

2014年9月

单机部署

Config Server+Git+Spring Cloud Bus

Apollo-quickstart+MySQL

Nacos单节点

支持

配置实时推送

支持(基于Spring Cloud Bus)

支持(HTTP 长轮询1s内)

支持(HTTP 长轮询1s内)

支持

分布式部署

Config Server+Git+MQ+Spring Cloud Bus

Config+Admin+Portal+MySQL

Nacos+MySQL

Disconf+MySQL

版本管理

支持

支持

支持

支持

配置回滚

支持

支持

支持

支持

灰度发布

支持

支持

支持

支持

权限管理

支持

支持

支持

支持

集群

支持

支持

支持

支持

多环境

支持

支持

支持

支持

监听查询

支持

支持

支持

支持

配置锁

支持

不支持

不支持

不支持

数据一致性

Git保证数据一致性

数据库模拟消息队列

HTTP异步通知

配置界面

统一界面

统一界面

统一界面

单点故障

支持HA部署

支持HA部署

支持HA部署

支持HA部署,高可用由Zookeeper提供

对Spring Cloud的支持

支持

支持

支持

支持

Spring Cloud Config功能全面、强大、可以无缝地和Spring体系相结合,使用方便简单。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、配置中心概述
  • 2、配置信息的管理方式
    • 2.1、使用配置文件
      • 2.2、使用数据库
        • 2.3、使用配置中心
        • 3、对比主流配置中心
        相关产品与服务
        云数据库 SQL Server
        腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档