Spring Cloud生态的配置服务器对比
本文从社区活跃度、产品特点、成功案例、产品缺点等维度,全方位对比Spring Cloud Config
、Apollo
、Nacos
、Disconf
、Spring Cloud Consul
、Spring Cloud Zookeeper
等几款Spring Cloud生态的配置服务器,帮助我们选择合适的配置服务器。
Spring Cloud Config
(1)GitHub
https://github.com/spring-cloud/spring-cloud-config ,官方组件,社区较活跃
(2)开源厂商
Pivotal(Spring官方团队)
(3)产品特点
- 遵循Spring Cloud Config的配置管理规范
- 后端存储支持丰富(支持Git、SVN、MySQL、Vault、本地存储等)
(4)演示环境
暂无
(5)成功案例
N多,目前用Spring Cloud的大多团队都是用的Spring Cloud Config
(6)缺点
- 没有界面,管理麻烦
- 没有权限管理
- 依赖繁多,例如:
-
- 如果使用Git作为后端存储,需要搭建GitLab或其他Git服务器集群
-
- 如需实现配置批量刷新,需要借助Spring Cloud Bus,依赖Kafka或RabbitMQ
- 由于依赖太多,集群搭建很麻烦——GitLab、MQ、Config Server本身都得做集群
Apollo
(1)GitHub
https://github.com/ctripcorp/apollo ,社区很活跃
(2)开源厂商
携程
(3)产品特点
- 概念较为清晰,上手简单
- 完善的流程、权限控制
- 界面友好
- 文档较为丰富
(4)成功案例
携程、网易蜂巢、中国平安等,更多公司详见:https://github.com/ctripcorp/apollo
(5)演示环境
- http://106.12.25.204:8070/
- 账号/密码:apollo/admin
(6)缺点
暂未发现
Nacos
(1)GitHub
https://github.com/alibaba/nacos ,社区非常活跃
(2)开源厂商
阿里巴巴
(3)产品特点
- 目前在Spring Cloud孵化器中孵化,孵化成功后,将成为Spring Cloud官方推荐的组件之一
- 不仅能做配置管理,也能做注册中心
- 界面友好
- 上手简单
- 文档丰富
(4)成功案例
阿里巴巴、虎牙直播、工商银行软件开发中心、爱奇艺等,更多公司详见:https://github.com/alibaba/nacos/issues/273
(5)演示环境
http://console.nacos.io/nacos/index.html
(6)缺点
暂未发现明显缺点
Disconf
(1)GitHub
https://github.com/knightliao/disconf ,社区活跃度一般
(2)开源厂商
原百度员工,现在蚂蚁金服
(3)产品特点
- 界面良好
- 部署简单
(4)成功案例
百度、滴滴出行、顺丰、网易等,更多公司详见:https://github.com/knightliao/disconf
(5)缺点
最新的版本发布于两年前,有点久了。
Spring Cloud Consul
(1)GitHub
https://github.com/spring-cloud/spring-cloud-consul ,官方组件,社区较活跃
(2)开源厂商
- Pivotal(Spring官方团队)
(3)产品特点
- 有个还算将就的界面
- 使用较为简单
- 遵循Spring Cloud Config的配置管理规范
- 不仅能做配置管理,也能做注册中心
(4)成功案例
- 暂未发现
(5)演示环境
- 暂无
(6)缺点
- 没有权限管理
- 管理界面不够友善
- 要想用得好,得了解Spring Cloud Config管理规范
Spring Cloud Zookeeper
(1)GitHub
https://github.com/spring-cloud/spring-cloud-zookeeper ,官方组件,社区较活跃
(2)开源厂商
Pivotal(Spring官方团队)
(3)产品特点
- 使用较为简单
- 遵循Spring Cloud Config的配置管理规范
- 不仅能做配置管理,也能做注册中心
(4)演示环境
暂无
(5)成功案例
暂未发现
(6)缺点
- 无界面
- 无权限管理
- 要想用得好,得了解Spring Cloud Config管理规范
其他
如果使用的是Spring Cloud Kubernetes,或者将Spring Cloud应用部署在Kubernetes环境中,还可以选择ConfigMap。
结论
Spring Cloud Config不太好用,需要制作一个界面,才能更好地帮助我们管理配置;Nacos或者Apollo是首选,功能完备、上手简单、傻瓜化操作、并且目前维护比较给力;
Consul也可以作为一个选择,但国内用Consul做配置管理的公司还没发现,并且Consul是Go语言编写的,如果选用,得有Hold住它的能力——尽管Consul很稳定。
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/24/comparison-of-configuration-servers-in-spring-cloud-ecosystem/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论