使用 Lambda 的微服務 - 使用 Amazon API Gateway 和 AWS Lambda 的 AWS Serverless 多層架構

此白皮書僅供歷史參考。有些內容可能已過時,有些連結可能無法使用。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Lambda 的微服務

AWS 雲端 architecture with API Gateways and Lambda functions across two accounts.

使用 Lambda 的微服務架構模式

微型服務架構模式不受限於典型的三層架構;不過,這種熱門模式可以透過使用無伺服器資源來實現顯著的好處。

在此架構中,每個應用程式元件都會解耦並獨立部署和操作。使用 Amazon API Gateway 建立的 API,以及後續由 啟動的函數 AWS Lambda,就是您建置微服務所需的一切。您的團隊可以使用這些服務,將您的環境解耦和分段至所需的精細程度。

一般而言,微服務環境可能會帶來下列困難:建立每個新微服務時的重複額外負荷、伺服器密度和使用率最佳化的問題、同時執行多個微服務版本的複雜性,以及與許多個別服務整合的用戶端程式碼需求擴散。

當您使用無伺服器資源建立微服務時,這些問題變得較不難解決,在某些情況下,只是消失。無伺服器微服務模式可降低建立每個後續微服務的障礙 (API Gateway 甚至允許複製現有 APIs,以及在其他帳戶中使用 Lambda 函數)。最佳化伺服器使用率不再與此模式相關。最後,Amazon API Gateway 以多種熱門語言提供以程式設計方式產生的用戶端 SDKs,以減少整合開銷。