🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] # 问题 以前我们配置是写在配置文件中 如果微服务没有配置中心,那么有很多隐患, 配置不标准,格式不统一, 生效周期长,配置不知道谁改的,没有审计功能,追溯谁调整的 有哪些可以配置 连接字符串,超时参数,业务开关,功能的开关(如果通过静态或者发布方式,响应周期长,还有可能失败) # 简单原理图 ![](https://box.kancloud.cn/bf8bfc8f9d97b6f978d250f43651a7b9_1662x734.png) 开发人员可以对配置中心更改配置,然后服务可以实时更改自己配置 2种(各有优劣) 1. 自己不断的去拉,然后更新自己(这个可以保证拉到,这次没拉到,下次再拉) 2. 配置中心自己主动推送(这个可以实时,但是没推成功,就不是实时) # 携程的配置中心 Apollo配置中心(还有springboot的) ![](https://box.kancloud.cn/164492343a4d7c4fc78c336a9c901c72_1597x782.png) 配置中心是个服务器server端 开发人员通过server更改,然后到对应的客户端 客户端有缓存,为了避免缓存失效,把缓存同步到本地文件 如果配置中心挂了,机器断电,内存缓存没了,恢复后可以本地文件缓存再拉取起来 更改配置后,会主动的推送配置,如果因为网络问题没有推送过去,他也会定期的去拉取 当然功能远不止这些,可以去携程的github上去看