Google改善無伺服器服務Cloud Run和Cloud Functions第二代的CPU啟動速度,能夠大幅減少兩者的冷啟動時間,根據Google的測量,啟動時間可減少達一半,官方表示,藉由加速CPU啟動,也代表著有更多的CPU資源能夠動態分配給用戶的容器,並且更快地開始服務請求。

冷啟動是在處理請求時所會遇到的延遲,這是因為系統需要時間啟動新的容器執行個體以服務新請求,像是當Cloud Run服務規模縮減到零個執行個體,在收到新請求時,就需要啟動一個新的執行個體處理該請求。

除了從零到一的執行個體縮放事件外,冷啟動通常還會發生在配置服務單一並行請求,或是流量縮放事件期間。雖然最小執行個體可以消除從零到一執行個體所遇到的冷啟動,但因為流量會擴展到更多的執行個體,所以該方法並無法一體適用於所有冷啟動。

Google現在透過加速CPU啟動,來減少每次冷啟動的時間,特別Java應用程式更是從該新功能顯著獲益,在Spring PetClinic應用程式加速50%,原生Spring搭配GraalVM服務加速47%,而一般的Java Cloud Functions也能夠加速23%。

在私人預覽階段測試資料,Node.js的啟動時間減少高達30%,官方解釋,這樣的進展對Node.js來說已經是很大的改進,畢竟Node.js僅有單執行緒,所以加速會比Java略少。每一種語言、框架和程式碼庫都可以從這個新功能,獲得不同程度的好處。

熱門新聞

Advertisement