預留並行數與節流(throttling)
「預留並行數(Reserved concurrency)」會為 Lambda 函式可同時執行的執行個體數設下硬性上限。當你把預留並行數設為 5,Lambda 會保證有 5 個名額永遠留給你的函式;但同時也代表第 6 個同時到達的請求會被「節流」。
當你的函式會寫入後端資源(例如資料庫),而該資源只能承受有限的連線數時,這特別有用。若沒有預留並行數,流量突然暴增時,可能會因數百個平行的 Lambda 執行而壓垮資料庫。
這當中有取捨:預留的名額會從你帳戶的總並行池中扣除(預設為 1,000)。在某個函式上設定 100 的預留並行數,會讓帳戶中其他所有函式只剩下 900 可用。
當一個預留並行數為 5 的函式收到第 6 個同時請求時,會發生什麼事?
本練習屬於課程
