https://mp.weixin.qq.com/s?__biz=Mzg4NTczNzg2OA==&mid=2247507420&idx=1&sn=4b32726abd205c7f94144bcb9105330f&chksm=ce64b9fc7f1d8de04a40b0153302dee52262c6f104c67195e2586e75c8093b8be493f252c8a3#rd
在非 Local 場景下,Prefill 定時獲取 Decode 的節點狀態信息并進行檢測,保證健康節點的服務,提供底線容災能力,并基于此實現了 Prefill-Decode 之間的負載均衡。目前 Prefill 選取 Decode 的負載均衡支持兩種:
RR 策略,Round Robin 的方式輪詢 Decode 節點。
WRR 策略,加權 RR 策略,根據 Decode 剩余可用顯存分配權重,在動態變化的負載環境下維持系統的高穩定性和響應速度。
負載均衡
在逐步增大流量規模的時候,我們發現有時候 Decode 會突然出現爆顯存的問題。這是因為在一個短暫的時間內,可能存在一個長請求將 Decode 顯存占滿的情況。Prefill 節點訪問哪臺 Decode 節點:我們初期采用的是 RR(Round Robin)的策略,這個策略面對突發情況無能為力。
基于這個觀察,我們開發了 WRR(加權 Round Robin),Prefill 實時獲取 Decode 的剩余顯存,動態決定負載均衡。這個方法進一步提高了系統的魯棒性。