40

Spring Cloud 生态的配置服务器最全对比贴

 5 years ago
source link: https://mp.weixin.qq.com/s?__biz=MzI4ODQ3NjE2OA%3D%3D&%3Bmid=2247484437&%3Bidx=1&%3Bsn=acbcee11c1d174f1c2f2a566359fdf4f&%3Bchksm=ec3c9972db4b10646eb09a4f108c68645d1b6b5c4a3d5bbae1ff7afd4ecae18b1dec57b
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

NBrQBrQ.jpg!web

本文从社区活跃度、产品特点、成功案例、产品缺点等维度,全方位对比Spring Cloud Config、Apollo、Nacos、Disconf、Spring Cloud Consul、Spring Cloud Zookeeper等几款Spring Cloud生态的配置服务器,帮助你选择合适的配置服务器。

一、Spring Cloud Config

GitHub地址

https://github.com/spring-cloud/spring-cloud-config ,Star数1178,官方组件,社区较活跃

开源厂商

Pivotal(Spring官方团队)

产品特点

  • 遵循Spring Cloud Config的配置管理规范

  • 后端存储支持丰富(支持Git、SVN、MySQL、Vault、本地存储等)

演示环境

暂无

成功案例

N多,目前用Spring Cloud的大多团队都是用的Spring Cloud Config

缺点

  • 没有界面,管理麻烦

  • 没有权限管理

  • 依赖繁多,例如:

    • 如果使用Git作为后端存储,需要搭建GitLab或其他Git服务器集群

    • 如需实现配置批量刷新,需要借助Spring Cloud Bus,依赖Kafka或RabbitMQ

  • 由于依赖太多,集群搭建很麻烦——GitLab、MQ、Config Server本身都得做集群

二、Apollo

GitHub地址

https://github.com/ctripcorp/apollo ,Star数11169,社区很活跃

开源厂商

携程

产品特点

  • 概念较为清晰,上手简单

  • 完善的流程、权限控制

  • 界面友好

  • 文档较为丰富

成功案例

携程、网易蜂巢、中国平安等,更多公司详见https://github.com/ctripcorp/apollo

演示环境

账号/密码:apollo/admin

缺点

暂未发现

三、Nacos

GitHub地址

https://github.com/alibaba/nacos ,Star数3820,社区非常活跃

开源厂商

阿里巴巴

产品特点

  • 目前在Spring Cloud孵化器中孵化,孵化成功后,将成为Spring Cloud官方推荐的组件之一

  • 不仅能做配置管理,也能做注册中心

  • 界面友好

  • 上手简单

  • 文档丰富

成功案例

阿里巴巴、虎牙直播、工商银行软件开发中心、爱奇艺等,更多公司详见https://github.com/alibaba/nacos/issues/273

演示环境

缺点

暂未发现明显缺点

四、Disconf

GitHub地址

https://github.com/knightliao/disconf ,Start数4505,社区活跃度一般

开源厂商

原百度员工,现在蚂蚁金服

产品特点

  • 界面良好

  • 部署简单

成功案例

百度、滴滴出行、顺丰、网易等,更多公司详见https://github.com/knightliao/disconf

缺点

最新的版本发布于两年前,有点久了。

五、Spring Cloud Consul

GitHub地址

https://github.com/spring-cloud/spring-cloud-consul ,Star数493,官方组件,社区较活跃

开源厂商

Pivotal(Spring官方团队)

产品特点

  • 有个还算将就的界面

  • 使用较为简单

  • 遵循Spring Cloud Config的配置管理规范

  • 不仅能做配置管理,也能做注册中心

成功案例

暂未发现

演示环境

暂无

缺点

  • 没有权限管理

  • 管理界面不够友善

  • 要想用得好,得了解Spring Cloud Config管理规范

六、Spring Cloud Zookeeper

GitHub地址

https://github.com/spring-cloud/spring-cloud-zookeeper ,Star数330,官方组件,社区较活跃

开源厂商

Pivotal(Spring官方团队)

产品特点

  • 使用较为简单

  • 遵循Spring Cloud Config的配置管理规范

  • 不仅能做配置管理,也能做注册中心

演示环境

暂无

成功案例

暂未发现

缺点

  • 无界面

  • 无权限管理

  • 要想用得好,得了解Spring Cloud Config管理规范

其他

如果使用的是Spring Cloud Kubernetes,或者将Spring Cloud应用部署在Kubernetes环境中,还可以选择ConfigMap,这种方式就笔者了解,业界这么玩的还不多,暂时不分析了。已经将Spring Cloud Kubernetes列入博客19年更新名单中了,敬请期待。

结论

  • Spring Cloud Config不太好用,需要制作一个界面,才能更好地帮助我们管理配置;

  • Nacos或者Apollo是笔者现在眼中的首选,功能完备、上手简单、傻瓜化操作、并且目前维护比较给力;

  • Consul也可以作为一个选择,但国内用Consul做配置管理的公司还没发现,并且Consul是Go语言编写的,如果选用,得有Hold住它的能力——尽管Consul很稳定。

干货分享

最近将个人学习笔记整理成册,使用PDF分享。关注我,回复如下代码,即可获得百度盘地址,无套路领取!

  • 001:《Java并发与高并发解决方案》学习笔记;

  • 002:《深入JVM内核——原理、诊断与优化》学习笔记;

  • 003:《Java面试宝典》

您的关注是对我最大的支持!

QNBBJj7.jpg!web


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK