AWS宣布Lambda SnapStart技術開始支援Python與.NET函式,以大幅提升啟動效能。該功能可透過快取和重用函式初始化後的記憶體和磁碟狀態,將函式啟動時間從數秒縮短至低於1秒,並允許開發者在多數情況下不需要修改程式碼,即可從SnapStart功能獲益。
AWS Lambda最早在2022年的時候推出SnapStart技術,最初僅支援Java,適用於Spring Boot、Quarkus和Micronaut等框架,用於解決JVM啟動過程的效能瓶頸。而這次的更新擴展至Python與.NET,不僅進一步降低初始化延遲,也提升了這兩種語言在Lambda平臺的執行效率和穩定性。
根據AWS釋出的資料,Python函式在載入大型相依套件或是進行機器學習模型推理時,通常需要耗費數秒鐘的初始化時間,載入較大型的機器學習模型甚至可能長達數十秒,而SnapStart則能有效縮短這段等待時間。對於.NET來說,技術重點則在於解決JIT(Just-in-Time)編譯帶來的變動延遲,讓函式效能表現更加一致。
SnapStart的運作原理在於首次函式啟動時,將初始化完成的執行環境進行快照,將其加密並快取,後續啟動時直接重用快照內容,而不需要再次執行初始化過程。這種機制特別適合需要頻繁啟動的函式或是低延遲應用場景,諸如即時資料分析、高頻率API呼叫,甚至是進行即時機器學習推理。
此外,AWS也針對Python和.NET SnapStart提供Runtime Hooks功能,讓開發者在快照建立前後執行特定邏輯,進一步強化應用的靈活性和控制性。開發者可以在快照建立前進行資料初始化,或在快照恢復後更新動態配置,使得應用程式能夠更好地使用外部資源。
AWS Lambda SnapStart已經在多個AWS區域支援Python與.NET函式,包括美國東部、歐洲和亞太地區。AWS提醒用戶,啟用SnapStart的函式會產生額外的快取和還原成本,可以定期清理未使用的版本降低相關費用。
熱門新聞
2024-11-29
2024-12-19
2024-11-20
2024-11-15
2024-11-15