全部產品
Search
文件中心

Application Configuration Management(Deprecated):名詞解釋

更新時間:Jul 06, 2024

文本總結了ACM相關的概念解釋。

配置

在系統開發過程中通常會將一些需要變更的參數、變數等從代碼中分離出來獨立管理,以獨立的設定檔的形式存在。目的是讓靜態系統工件或者交付物(如WAR,JAR包等)更好地和實際的物理運行環境進行適配。組態管理一般包含在系統部署的過程中,由系統管理員或者營運人員完成這個步驟。配置變更是調整系統運行時的行為的有效手段之一。

動態配置和靜態配置

系統配置可以是靜態或者動態配置。配置的版本與軟體本身的版本強綁定的稱之為靜態配置。反之,在同一個版本的系統部署且運行期間配置可以連續發生多次變更的則稱之為動態配置。例如build-version: 1.0.0配置與軟體版本綁定,稱之為靜態配置;而線程池大小的配置則可以在系統運行期間連續多次變更,稱之為動態配置。

組態管理

在資料中心中,系統中所有配置的編輯、儲存、分發、變更管理、歷史版本管理、變更審計等所有與配置相關的活動統稱為組態管理。

配置推送

組態管理中,常需要組態管理系統將配置的變更分發到相關的系統,從分發到配置生效的過程稱為配置推送。

推送軌跡

從配置變更,配置推送到配置生效過程的整個軌跡稱為推送軌跡。通過查看某個配置的推送軌跡,我們可以獲知一個配置變更在哪些應用上,哪些機器上,在哪個時間點生效,產生了哪些影響等。

配置監聽

配置監聽,是指ACM允許系統通過使用SDK等方式向ACM系統註冊監聽器(Listener),從而監聽並消費該配置的變更。

配置項

是指一個具體的可配置的參數與其範圍,通常是param-key=param-value的形式存在。例如我們常配置系統的日誌輸出層級(logLevel=INFO|WARN|ERROR)就是一個配置項。

配置集

一組相關或者不相關的配置項的集合稱為配置集。通常系統中的一個設定檔就是一個配置集,其內包含了系統各個方面配置。例如一個配置集可能包含了系統如資料來源、線程池、記錄層級等配置項。

配置集ID(Data ID)

在ACM中代表配置集的ID, 是配置組織的維度之一。一般通過Data ID來組織劃分系統的配置集。一個系統或者應用可以包含多個配置集,每個配置集可以用有意義的名稱來標識這個配置集。Data ID通常採用類Java包命名方式(如com.taobao.tc.refund.log.level)的命名規則保證全域唯一性,此命名規則非強制。

配置分組(Group)

ACM中配置集的分組,是配置組織的維度之一。通常使用一個有意義的字串來分組配置集,例如Buy,Trade等,用以區分相同Data ID的配置集。ACM建立配置時,如果使用者未填Group名字,則預設用DEFAULT_GROUP代替。Group的常用情境是同一個配置類型用於不同應用或者組件,如database_url配置,MQ_topic配置等。

命名空間(Namespace)

ACM中的命名空間,用於進行租戶粒度的配置隔離。不同的命名空間下,可以存在相同的Group,Data ID的配置。Namespace的常用情境之一是不同環境的配置的區分隔離,如開發測試環境和生產環境的配置隔離等。

配置快照

ACM用戶端SDK會在本地組建組態的快照。當用戶端無法串連到ACM Server時,可以利用快照提供系統的整體容災能力。配置快照類似於Git中的本地commit的概念,也類似緩衝,會在適當的時機更新,但是沒有緩衝到期(expire)的概念。