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

演示環境

http://106.12.25.204:8070/
賬號/密碼:apollo/admin

缺點

暫未發現

三、Nacos

GitHub地址

https://github.com/alibaba/nacos,Star數3820,社區非常活躍

開源廠商

阿里巴巴

產品特點

  • 目前在Spring Cloud孵化器中孵化,孵化成功後,將成為Spring Cloud官方推薦的組件之一
  • 不僅能做配置管理,也能做註冊中心
  • 界面友好
  • 上手簡單
  • 文檔豐富

成功案例

阿里巴巴、虎牙直播、工商銀行軟件開發中心、愛奇藝等,更多公司詳見https://github.com/alibaba/nacos/issues/273

演示環境

http://console.nacos.io/nacos/index.html

缺點

暫未發現明顯缺點

四、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/

留言

這個網誌中的熱門文章

Json概述以及python對json的相關操作

Docker容器日誌查看與清理

利用 Keepalived 提供 VIP