深入理解Apollo核心機制之灰度發佈——創建灰度

概述

ApolloPortal創建灰度後都做了什麼呢?Apollo是如何維護主版本與灰度版本關係的呢?

其實創建灰度非常簡單,可以看到下圖中“Cluster”表結構中的“ParentClusterId”字段。這個就是維護灰度關係的核心。
在創建灰度的時候,Apollo會根據當前Cluster、Namespace創建對應的子Cluster、子Namespace。其中子Cluster的“ParentClusterId”字段值等於當前Cluster的Id,這樣就關聯上了。(主版本就是“當前Cluster”下的Namespace,灰度版本就是”子Cluster“下的Namespace)。

總結下來無非就是clone了當前cluster、當前namespace,像數據庫中新增了一個cluster(你不能再portal左側看到),並且新增一個namespace在這個子cluster下而已。不過記得要關聯上父子關係就行了。其他的對於灰度版本的namespace的操作就和正常的namespace沒什麼區別的。

相關數據表結構


核心代碼方法

創建子Cluster

保存子Cluster

創建子Namespace

保存子Namespace

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