主要流程梳理
:獲得當前集群空閒資源->計算當前topology的executor資訊(分配時會用得上)->計算可重新分配和可釋放的資源->分配
eventscheduler排程演算法與default相比少了乙個計算可重新分配資源的環節,直接利用supervisor中空閒的slot進行分配,在此不再細講。
這兩種排程機制在一般情況下排程結果基本保持一致,所以一起來看:
集群初始狀態
接下來我們提交3個topology
topology
worker數
executer數
task數
t-138
16t-2510
10t-335
10分配後集群狀態為:
分配後集群狀態為:
分配後集群狀態為:
如圖,此任務排程方式也不是絕對均勻的,s1已經滿負荷運轉,而s4才剛使用乙個slots。
此篇用到的演算法如comput-executors、sort-slots、slots-can-reassign、bad-slots、sort-slots等
會在下篇部落格中專門**
原始碼閱讀 Glide原始碼閱讀之with方法(一)
前言 本篇基於4.8.0版本 原始碼閱讀 glide原始碼閱讀之with方法 一 原始碼閱讀 glide原始碼閱讀之load方法 二 原始碼閱讀 glide原始碼閱讀之into方法 三 大多數情況下,我們使用glide 就一句 但是這一句 裡面蘊含著成噸的 with方法有以下幾個過載方法 publi...
原始碼閱讀 Glide原始碼閱讀之load方法(二)
原始碼閱讀 glide原始碼閱讀之load方法 二 原始碼閱讀 glide原始碼閱讀之into方法 三 首先,load方法有以下幾個過載方法 public requestbuilder load nullable bitmap bitmap public requestbuilder load nu...
閱讀筆記 fsnotify原始碼閱讀
fsnotify的github位址是 fsnotify是乙個資料夾監控應用。可以使用建立乙個watcher來對某個資料夾進行監控 檔案目錄很簡單,實際就兩個程式檔案,fsnotify.go 和 各平台的fsnotify go 後乙個檔案是各個不同平台的實現 example test.go中給的是最簡...