开发者学堂课程【Spring Cloud Alibaba Nacos 详解(上):Nacos 配置管理-什么是配置中心】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/724/detail/12916
Nacos 配置管理-什么是配置中心
内容介绍
一、什么是配置
二、什么是配置中心
一、什么是配置
应用程序在启动和运行的时候往往需要读取一些配置信息,配置基本上伴随着应用程序的整个生命周期。
比如:
数据库连接参数、启动参数等。
(一)配置主要有以下几个特点:
1、配置是独立于程序的只读变量
配置对于程序是只读的,程序通过读取配置来改变自己的行为,但是程序不应该去改变配置 。
2、配置伴随应用的整个生命周期
配置贯穿于应用的整个生命周期,应用在启动时通过读取配置来初始化,在运行时根据配置调整行为。比如:启动时需要读取服务的端口号、系统在运行过程中需要读取定时策略执行定时任务等。
3、配置可以有多种加载方式
常见的有程序内部 hardcode,配置文件,环境变量,启动参数,基于数据库等。
4、配置需要治理
同一份程序在不同的环境(开发、测试、生产),不同的集群(如不同的数据中心)经常需要有不同的配置,所以需要有完善的环境、集群配置管理
二、什么是配置中心
1、在微服务架构中,当系统从一个单体应用,被拆分成分布式系统上一个个服务节点后,配置文件也必须跟着迁移(分割),这样配置就分散了,不仅如此,分散中还包含着冗余。
2、用户需求指向负载均衡( proxy ),负载均衡又分成各种配置文件。
3、配置中心的功能:
配置中心将配置从各应用中剥离出来,对配置进行统一管理,应用自身不需要自己去管理配置。
(1)用户修改/发布配置到配置中心
(2)配置中心配置更新通知到服务A(配置客户端)
(3)配置中心获取最新配置到服务B(配置客户端)