AWS Lambda新增Web Functions,開發者可直接將使用Express、Hono、Fastify及Next.js等框架開發的Node.js網頁服務部署至Lambda,不必改寫成事件處理函式,也無須額外使用轉接工具,新服務支援多請求並行以及跨區域(Region)部署。AWS現將原有的Lambda函式稱為Lambda Event Functions。
Lambda自2014年推出以來,主要透過事件處理函式接收請求並執行程式,開發者若要部署既有HTTP網頁伺服器,須改寫程式的請求處理入口,或使用Lambda Web Adapter等轉接工具。Web Functions則原生支援HTTP伺服器,讓程式直接監聽指定連接埠並處理請求。
Web Functions的單一執行環境可同時處理多個HTTP請求,最高可設定128個並行請求,實際數量則依資源使用情形調整。當程式等待資料庫或其他API回應時,仍可處理其他請求,減少流量增加時額外啟動執行環境的需求,適用情境包括API後端、伺服器端網頁產生,以及串流輸出的AI應用。
計費方式也與事件型Lambda不同,Web Functions依CPU實際活動時間計費,等待外部服務回應而未使用CPU的期間,不會產生相應的CPU費用。不過,執行環境存續期間仍需支付記憶體費用,另外還有請求次數與資料傳輸費用。
AWS過去已提供App Runner等託管型網頁服務,能自動建置容器並依流量擴充,但即使沒有流量,App Runner仍會保留至少一個執行個體。Lambda Web Functions則讓開發者直接部署Node.js HTTP伺服器,由Lambda管理執行環境及並行請求數量,沒有流量時可縮減至零。App Runner已於今年4月30日起停止接受新客戶,既有客戶仍可繼續使用。
Web Functions支援跨區域部署,開發者可指定多個AWS區域,由AWS自動複製程式並提供單一全球網址,盡可能依網路延遲將請求導向延遲較低的區域。Web Functions可搭配CloudFront,由快取提供靜態內容,動態請求則交由Lambda處理,並透過來源存取控制限制只有指定的CloudFront能存取服務端點。
目前Web Functions支援Node.js 24及Arm64架構,也支援VPC連線,已在美國維吉尼亞北部、俄亥俄、奧勒岡、日本東京及愛爾蘭等5個AWS區域開放使用。
Comments (0)
Sign in to comment