Lambda@Edge 是 Amazon CloudFront 的一項功能,可讓您更靠近應用程式的使用者執行程式碼,從而提高效能和降低延遲。藉由 Lambda@Edge,您無需在全球多個位置佈建或管理基礎機構。只需為使用的運算時間支付費用,一旦未執行程式碼,就會停止計費。
藉由 Lambda@Edge,您可以透過讓 Web 應用程式分佈在全球並提高其效能,來豐富應用程式 — 全都無需伺服器管理作業。Lambda@Edge 執行您的程式碼來對 Amazon CloudFront 內容交付網 (CDN) 產生的事件做出回應。只要將程式碼上傳到 AWS Lambda,Lambda 就會處理所有必要的工作,在離最終使用者最近的 AWS 位置執行並擴展程式碼以提供高可用性。
優勢
構建回應更快的應用程式
Lambda@Edge 在離您使用者更近的 AWS 位置全域執行您的程式碼,如此您便能以高效能及低延遲交付功能完整的自訂內容。
不必管理伺服器
您可以自動在全球的 AWS 位置擴充和執行程式碼,而無需佈建、擴充或管理多個位置的來源伺服器,或設定任何負載平衡或網域名稱系統 (DNS) 路由服務。您可以新增功能,而無需對您的來源執行的現有應用程式做出任何變更。最後,透過使用 Lambda@Edge 和 Amazon CloudFront,與傳統 CDN 相比,您需要管理的來源基礎架構更少。
自訂您的內容交付
藉由 Lambda@Edge,您可以自訂透過 Amazon CloudFront CDN 交付的內容,而且可以根據您的應用程式效能需求自訂電腦資源和執行時間。
運作方式

使用案例
簡化和減少來源基礎架構
您可以使用 Lambda@Edge 做為您來源架構的延伸或替代。這可讓您執行以下所有工作:從邊緣簡單的 HTTP 請求和回應處理到更進階的功能,例如網站安全性、即時影像轉換、智慧型機器人移轉、搜尋引擎最佳化以及 等更多工作。
網站安全和隱私
您可以觸發 Lambda 函數,以在所有來源回應上新增 HTTP 安全性標頭,而無需在您的來源上修改應用程式程式碼。這可在使用 CloudFront 以低延遲交付內容時,協助改進您使用者和內容提供者的安全與隱私。
閱讀部落格。 >>

邊緣的動態 Web 應用程式
透過將 Lambda@Edge 與其他 AWS 服務相結合,開發人員可在自動擴展和縮減的邊緣構建強大的 Web 應用程式—而對於自動擴充、備份或資料中心備援作業,也不必花費心力進行來源基礎架構和管理工作。

搜尋引擎最佳化 (SEO)
您可以使用 Lambda@Edge 來改進您網站的搜尋引擎最佳化 (SEO)。例如,當使用者代理程式為搜尋引擎機器人 (Googlebot 或 Bingbot) 時,您可以觸發 Lambda 函數來提供 Amazon S3 中儲存的預先呈現 HTML 頁面。
閱讀部落格。 >>

跨來源和資料中心智慧路由
透過使用 Lambda@Edge 根據不同的檢視者特徵,將請求動態路由到不同的來源,您可平衡來源上的負載,同時改進使用者的效能。例如,您可以根據檢視者的位置,將請求路由至家庭區域內的來源。
閱讀部落格。 >>

邊緣的機器人移轉
Lambda@Edge 可協助您封鎖邊緣不想要的機器人,然後讓授權的流量通過。透過以智慧方式降低這些自動化程序,您可協助保護您的來源基礎架構免受無用網路爬取程式和機器人的干擾,同時提高實際使用者的效能。

提高的使用者體驗
Lambda@Edge 透過讓您針對使用者個人化內容,而不用犧牲效能,來協助透過全球您的網站和 Web 應用程式提高使用者的體驗。
即時影像轉換
您可以根據使用者特徵快速轉換影像,來自訂您使用者的體驗。例如,您可以根據檢視者的裝置類型—行動、桌上型電腦或平板電腦,來調整影像大小。您還可以在 CloudFront Edge 位置快取轉換的影像,來進一步在交付影像時提高效能。
閱讀部落格。 >>

A/B 測試
您可以測試和為使用者提高不同的網站版本,而不用重新導向或變更瀏覽器 URL。 這可讓您無縫發佈您網站的更新,在繼續為使用者提供快速回應的同時,提高網站的整體體驗。

使用者身份驗證和授權
您可以使用 Lambda@Edge 來協助驗證和授予使用者對您網站上優質付費牆內容的權限,在未經授權的請求到達您的來源基礎架構之前進行篩選。例如,您可以透過叫用驗證和使用者管理服務 (如 Amazon Cognito),來觸發 Lambda 函數以驗證每個檢視者請求。
閱讀部落格。 >>

排定使用者優先順序
Lambda@Edge 可協助您透過將使用者路由至不同的頁面和體驗,來控制和設定存取您網站的優先順序。例如,您可以在流量於購物銷售期間劇增時,觸發執行程式碼的 Lambda 函數,以排定您電子商務網站上的優質和付費使用者的優先順序。您也可以將其他購物者重新導向至臨時「等候室」,一個具有品牌形象和行銷交易的替代網站,他們可在此等候依次存取您的主要零售網站。
閱讀部落格。 >>

使用者追蹤和分析
透過結合使用 Lambda@Edge 和 Kinesis,您可以處理即時串流,以便追蹤和分析您網站和行動應用程式上的全球分佈的使用者活動,包括點擊串流分析。
閱讀部落格。 >>
