全部產品
Search
文件中心

Application Configuration Management(Deprecated):產品對比

更新時間:Jul 06, 2024

本文對比分析了幾款主流的應用配置類產品。

相似產品簡介

  • ZooKeeper

    ZooKeeper 是一個分布式應用程式協調服務,是 Google Chubby 的開源實現。它是一個為分布式應用提供一致性服務的軟體,提供的功能包括配置維護、網域名稱服務 (DNS)、分布式同步、組服務等。在 Hadoop 叢集等情境下,ZooKeeper 同時充當Application Configuration Manangement的角色。但是由於它是 CP(Consistency,Partition Tolerance) 類應用,因此在可用性和效能上都會受到一定影響。

  • etcd

    和 ZooKeeper 類似,etcd 是一個高可用的KVStore for Redis系統,主要用於配置共用和服務發現。ETCD 是由 CoreOS 開發並維護的,靈感來自於 ZooKeeper 和 Doozer。它使用 Go 語言編寫,並通過 Raft 一致性演算法處理日誌複製以保證強一致性。etcd 和 ZooKeeper 類似,同樣可以用來做應用管理配置。但是由於它是強一致的管理類應用,因此其可用性和效能在某些情境會受到一定影響。

  • Spring Cloud Config Server

    和 ACM 類似,Spring Cloud Config Server 為服務端和用戶端提供了分布式系統的外部配置支援。設定管理員為各應用的所有環境提供了一個中心化的外部配置。與 ACM 不同的是,Spring Cloud 設定管理員預設採用 Git 來儲存配置資訊,其配置儲存、版本管理、發布等功能都基於 Git 或其他外圍系統來實現。除此之外,在配置功能方面,ACM 和 Spring Cloud Config 也有很大不同。

產品對比

以下表格詳細描述了 ACM 與 etcd、ZooKeeper 和 Spring Cloud Config 在Application Configuration Manangement方面的區別。

產品 ACM Spring Cloud Config Server ZooKeeper ETCD
配置修改 直接在 ACM 控制台上進行配置修改 一般在 Git 倉庫上進行配置修改 通過調用 ZK API 修改 通過調用 etcd API 修改
配置自動推送 修改過的配置自動推送到監聽的用戶端 用戶端只能在啟動的時候載入 修改過的配置自動推送到監聽的用戶端 修改過的配置自動推送到監聽的用戶端
API介面 基於 RESTful API,同時支援 Java Native 介面,Spring Cloud 介面,和其他語言類介面 基於 RESTful API 和 Spring Cloud 規範,同時也支援其他語言用戶端 支援 Java 原生介面 基於 RESTful API 的介面
版本管理 在 ACM 上自動記錄各個修改的版本資訊 通過 Git 間接管理版本 不帶任何版本控制 不帶任何版本控制
配置推送追蹤 可查詢所有用戶端配置推送狀態和軌跡 無法查詢配置推送歷史 無法查詢配置推送歷史 無法查詢配置推送歷史
說明 ACM 不是 CP 類應用,因此和 etcd、ZK 定位不同,ACM 並不適合用於嚴格的事務類佈建服務,例如分布式鎖。