Spring Cloud生態的配置服務器最全對比貼
本文從社區活躍度、產品特點、成功案例、產品缺點等維度,全方位對比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很穩定。
出自: http://itmuch.com/spring-cloud-sum/spring-cloud-config-serer-compare/
留言
張貼留言