AHAS是阿里雲提供的應用高可用服務(Application High Availability Service)產品。
高可用這個關鍵詞可以說是互聯網及軟件開發行業熱度一直很高的詞語了,阿里雲推出的這款產品,如果你是開發人員,可能看名字就會被吸引。
目前產品是免費開通的,我們來體驗一下。
首先登錄阿里雲(https://www.aliyun.com)。
在【產品】菜單,選擇開發運維->應用高可用服務:
或者在搜索框中輸入:高可用 (ps:輸入高、可用甚至AH都能搜索到,不過輸入時有點卡頓,不知道是不是我本機輸入法或者瀏覽器問題,本機用的chrome)
單擊文字進入產品主頁,點擊立即開通即可。(注:產品是免費開通的)
第一次進入產品主頁,有一個提示:
表示選擇主機地域。如果主機在北京、杭州等區域的 VPC 網絡中,則選擇對應地域即可,如果主機有公網連接,則可選擇公網。
依次點擊菜單,看菜單名稱以及內容,大概了解產品提供的功能。
這里我們點擊【流控降級】菜單:
點擊右邊按鈕【添加應用】:
有3個tab菜單:SDK接入、Java Agent接入、體驗demo
點擊【體驗demo】:
先點擊下載demo把demo的jar下載到本機,如E:/test/ahas-sentinel-sdk-demo.jar。
我們嘗試在公網下運行,按照提示,首先把左上角地域切換為公網
接着網頁中復制java命令,打開命令行,在E:/test目錄下執行:java -Dproject.name=MyApp -Dahas.license=ec2eb48c94424fa7a825ce8526a88e9a -jar ahas-sentinel-sdk-demo.jar
注:這里把AppName改為了MyApp
查看輸出,發現demo已開始在跑了:
點擊頁面中的右邊的【返回】按鈕,回到【流控降級】菜單的主頁:
// 這里要特別注意下,因為前端好像記住了頁面,而【返回】按鈕在最右邊,開始自己沒注意到這個按鈕,找了很久文檔控制台在哪里orz
可以看到,MyApp應用已經顯示出來了;
第1排文字:系統規則數、流控接口數、降級接口數均為0,因為還沒有配置任何規則;
第2排文字:機器數為1,表示應用只有1個節點,通過QPS100,拒絕QPS0,因為沒有配流控規則,所以沒有拒絕的QPS。
點擊MyApp文字,可以看到,熟悉的Sentinel控制台界面出來了:)
我們依次點擊左邊的6個菜單,對比Sentinel控制台https://github.com/alibaba/Sentinel/wiki/控制台,看看有什么不同。
監控詳情
1.Sentinel中菜單名是實時監控,AHAS這里是監控詳情;
2.左邊星號按鈕提供了收藏資源功能,下次點監控詳情菜單,已收藏的資源會優先顯示;
=> 方便重點關注某些資源
3.右邊第1個按鈕,彈出對話框顯示該資源的監控圖表,並可以選擇時間;
=> 提供更多時間范圍的查看,但是時間范圍只能是某一天
4.右邊第2個按鈕,可以彈出直接新增該資源規則的對話框;
=> 方便用戶在監控詳情界面直接新增、修改,其中有規則的資源,新增按鈕變成了修改按鈕,這點十分貼心!
但有個小問題是新增后要刷新頁面或者重新進入菜單,按鈕才由新增按鈕變為修改按鈕;
請求鏈路
1.Sentinel中菜單名簇點鏈路,AHAS這里是請求鏈路;
2.表格右邊操作列增加了監控按鈕,可方便的查看該資源的監控圖表;
3.在平鋪視圖下,表列頭通過QPS、拒絕QPS等增加了點擊排序功能;
4.平鋪/樹狀按鈕的左邊,有資源沒有出現文字和hover提示說明;
流控規則
1.列表頁表列頭,如:來源應用增加了點擊排序,流控模式、閾值類型等增加了篩選按鈕;
2.規則增加了狀態,包括列表顯示和新增、修改,同時也可以批量啟用/禁用;
3.新增規則對話框頁面,有圖標hover提示,並可方便地跳轉到對應的產品說明文檔;
降級規則
1.列表頁表列頭,資源名稱增加了點擊排序,狀態增加了篩選按鈕;
2.規則增加了狀態,包括列表顯示和新增、修改,同時也可以批量啟用/禁用;
3.新增規則對話框頁面,有圖標hover提示,並可方便地跳轉到對應的產品說明文檔;
4.降級規則中時間窗口加減秒,+-秒UI更加好看,方便通過鼠標點擊操作;
系統規則
1.列表頁表列頭,閾值增加了點擊排序,狀態增加了篩選按鈕;
2.規則增加了狀態,包括列表顯示和新增、修改,同時也可以批量啟用/禁用;
機器列表
1.列表頁表列頭,機器名稱增加了點擊排序,客戶端版本等增加了篩選按鈕;
=> 客戶端版本顯示1.3.1-1.0.1,好像有點問題?
2.少了1列端口號,多了1列進程ID;
=> 列名是進程ID,顯示的是數字,不確定這是端口號還還是進程ID,為什么沒有顯示端口號?
總結
阿里雲上的AHAS作為開源組件Sentinel的產品化服務,提供了便捷、貼心的用戶體驗。
給力:
1.更加便捷的規則設置、監控查看操作
比如在監控詳情頁可以新增、修改、刪除某資源的規則;在請求鏈路中可通過資源名查看監控圖表;
2.更加完善的監控圖表、規則列表查看;
比如列表列頭增加點擊排序、篩選;某資源的監控圖表可按時間篩選;
3.貼心的圖標hover提示,並支持跳轉到對應的產品文檔;
比如新增規則、請求鏈路等界面都有文字圖標hover提示,在提示中有詳細說明描述,並可點擊鏈接跳轉到對應的產品文檔;
4.規則增加啟用/禁用狀態,並支持批量操作;
這樣規則不用刪除,而是可以保留隨時啟用/禁用;
5.完善的產品使用文檔;
話說Sentinel官方wiki已經很贊了並且還在不斷完善,AHAS這個從快速入門、產品簡介、各功能詳細介紹、常見問題等,文檔清晰又詳細;
吐槽:
1.監控詳情頁面對某資源增加規則后,頁面需要刷新或者重新點菜單,對應的按鈕圖標才會改變;
2.設置規則貌似是對所有節點生效的,和Sentinel控制台支持舊版、新版不同,有時每個節點負載不一樣,可能有需要單獨設置的場景;
3.機器列表的客戶端版本顯示1.3.1-1.0.1怎么是個范圍,以及沒有端口號;
4.監控詳情頁有QPS、RT維度的統計圖表,但缺少線程數、異常比例維度的圖表;
5.監控詳情頁用戶不知道默認排序,並缺少排序方式的選擇;
參考:
AHAS產品主頁:https://www.aliyun.com/product/ahas
AHAS控制台:https://ahas.console.aliyun.com
Sentinel控制台wiki:https://github.com/alibaba/Sentinel/wiki/控制台
Sentinel主頁:https://github.com/alibaba/Sentinel