AWS Lambda是一種計算服務,可讓您運行代碼而無需置備或管理服務器。AWS Lambda僅在需要時執(zhí)行您的代碼并自動擴展,從每天幾個請求到每秒數(shù)千個。您只需為您消耗的計算時間付費-代碼未運行時不收費。借助AWS Lambda,您幾乎可以為任何類型的應用程序或后端服務運行代碼-只需進行零管理即可。AWS Lambda在高可用性計算基礎架構上運行代碼,并執(zhí)行對計算資源的所有管理,包括服務器和操作系統(tǒng)維護,容量供應和自動擴展,代碼監(jiān)視和日志記錄。您需要做的就是在其中之一中提供您的代碼AWS Lambda支持的語言。
您可以使用AWS Lambda運行代碼以響應事件,例如對Amazon S3存儲桶或Amazon DynamoDB表中的數(shù)據(jù)進行更改;使用Amazon API Gateway運行代碼以響應HTTP請求;或使用通過AWS開發(fā)工具包進行的API調用來調用您的代碼。借助這些功能,您可以使用Lambda輕松為Amazon S3和Amazon DynamoDB之類的AWS服務構建數(shù)據(jù)處理觸發(fā)器,處理Kinesis中存儲的流數(shù)據(jù),或者創(chuàng)建自己的后端,以AWS規(guī)模,性能和安全性運行。
您還可以構建由事件觸發(fā)的功能組成的無服務器應用程序,并使用CodePipeline和AWS CodeBuild自動部署它們。
我什么時候應該使用AWS Lambda?
AWS Lambda是適用于許多應用程序場景的理想計算平臺,前提是您可以使用AWS Lambda支持的語言編寫應用程序代碼,并且可以在Lambda提供的AWS Lambda標準運行時環(huán)境和資源中運行。
使用AWS Lambda時,您僅對代碼負責。AWS Lambda管理可平衡內存,CPU,網絡和其他資源的計算團隊。這是為了換取靈活性,這意味著您無法登錄到計算實例,也無法在提供的運行時上自定義操作系統(tǒng)。這些限制使AWS Lambda可以代表您執(zhí)行操作和管理活動,包括供應容量,監(jiān)視車隊運行狀況,應用安全補丁,部署代碼,
如果您需要管理自己的計算資源,Amazon Web Services還提供其他計算服務來滿足您的需求。
·Amazon Elastic Compute Cloud(Amazon EC2)服務提供了靈活性和多種EC2實例類型供您選擇。它為您提供了自定義操作系統(tǒng),網絡和安全設置以及整個軟件堆棧的選項,但是您負責配置容量,監(jiān)視車隊的運行狀況和性能以及使用可用區(qū)進行容錯。
·Elastic Beanstalk提供了一個易于使用的服務,用于在Amazon EC2上部署和擴展應用程序,您可以在其中保留所有權并完全控制基礎EC2實例。
Lambda是一項高可用性的服務。