Apollo使用指南(二)公共組件接入指南

2.1 公共組件和普通應用的區別

公共組件是指那些發佈給其它應用使用的客戶端代碼,比如CAT客戶端、Hermes Producer客戶端等。

雖然這類組件是由其他團隊開發、維護,但是運行時是在業務實際應用內的,所以本質上可以認爲是應用的一部分。

(前提是這些組件也使用apollo進行動態配置)

通常情況下,這類組件所用到的配置由原始開發團隊維護,不過由於實際應用的運行時、環境各不一樣,所以我們也允許應用在實際使用時能夠覆蓋公共組件的部分配置。

2.2 公共組件接入步驟

(此處建議直接跳到2.3,因爲這裏的接入步驟跟(一)中都是一樣的,唯一區別是下面標紅的地方)

公共組件的接入步驟,和普通應用幾乎一致,唯一的區別是公共組件需要創建自己唯一的Namespace

所以,首先執行普通應用接入文檔中的以下幾個步驟,然後再按照本章節後面的步驟操作。

  1. 創建項目
  2. 項目管理員權限

2.2.1 創建Namespace

創建Namespace需要項目管理員權限,如果發現沒有添加Namespace按鈕,可以找項目管理員授權。

  1. 點擊頁面左側的添加Namespace

  2. 點擊“創建新的Namespace”

  3. 輸入公共組件的Namespace名稱,需要注意的是Namespace名稱全局唯一

    • Apollo會默認把部門代號添加在最前面
  4. 點擊提交後,頁面會自動跳轉到關聯Namespace頁面

  • 首先,選中所有需要有這個Namespace的環境和集羣,一般建議全選
  • 其次,選中剛剛創建的namespace
  • 最後,點擊提交

5. 關聯成功後,頁面會自動跳轉到Namespace權限管理頁面

         1. 分配修改權限

 

         2.  分配發布權限

 

  6.  點擊“返回”回到項目頁面

2.2.2 添加配置項

編輯配置需要擁有這個Namespace的編輯權限,如果發現沒有新增配置按鈕,可以找項目管理員授權。

2.2.2.1 通過表格模式添加配置

  1. 點擊新增配置 

  2. 輸入配置項 

  3. 點擊提交 

2.2.2.3 通過文本模式編輯

這部分和普通應用一致,具體步驟請參見1.3.2 通過文本模式編輯

2.2.3 發佈配置

配置只有在發佈後纔會真的被應用使用到,所以在編輯完配置後,需要發佈配置。

發佈配置需要擁有這個Namespace的發佈權限,如果發現沒有發佈按鈕,可以找項目管理員授權。

  1. 點擊“發佈按鈕” 

  2. 填寫發佈相關信息,點擊發布 

2.2.4 應用讀取配置

配置發佈成功後,應用就可以通過Apollo客戶端讀取到配置了。

Apollo目前提供Java客戶端,具體信息請點擊Java客戶端使用文檔

如果應用使用了其它語言,也可以通過直接訪問Http接口獲取配置,具體可以參考其它語言客戶端接入指南

對於公共組件的配置讀取,可以參考上述文檔中的“獲取公共Namespace的配置”部分。

2.3 應用覆蓋公用組件配置步驟

前面提到,通常情況下,公共組件所用到的配置由原始開發團隊維護,不過由於實際應用的運行時、環境各不一樣,所以我們也允許應用在實際使用時能夠覆蓋公共組件的部分配置。

這裏就講一下應用如何覆蓋公用組件的配置,簡單起見,假設apollo-portal應用使用了hermes producer客戶端,並且希望調整hermes的批量發送大小。

2.3.1 關聯公共組件Namespace

  1. 進入使用公共組件的應用項目首頁,點擊左側的添加Namespace按鈕

  • 所以,在這個例子中,我們需要進入apollo-portal的首頁。
  • (添加Namespace需要項目管理員權限,如果發現沒有添加Namespace按鈕,可以找項目管理員授權)

2. 找到hermes producer的namespace,並選擇需要關聯到哪些環境和集羣 

3. 關聯成功後,頁面會自動跳轉到Namespace權限管理頁面

  1. 分配修改權限

    2. 分配發布權限

 

   3. 點擊“返回”回到項目頁面

2.3.2 覆蓋公用組件配置

   1. 點擊新增配置 

    2. 輸入要覆蓋的配置項

 

       3. 點擊提交 

2.3.3 發佈配置

配置只有在發佈後纔會真的被應用使用到,所以在編輯完配置後,需要發佈配置。

發佈配置需要擁有這個Namespace的發佈權限,如果發現沒有發佈按鈕,可以找項目管理員授權。

        1. 點擊“發佈按鈕” 

         2. 填寫發佈相關信息,點擊發布 

        3. 配置發佈成功後,hermes producer客戶端在apollo-portal應用裏面運行時讀取到的sender.batchSize的值就是1000。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章