簡體   English   中英

特定的 AWS Lambda 函數是否總是在同一台機器上啟動?

[英]Is a particular AWS Lambda function launched in the same machine always?

我們已經通過控制台在 Python 中創建了一個 AWS Lambda 函數,並通過單擊“測試”按鈕進行了測試。 它工作正常。

所以現在我想明白,每次當我點擊“測試”時,

  • 這個 Lambda 函數是否總是在同一台機器上運行?
  • AWS Lambda 是否在將執行用戶函數的同一台機器上啟動容器?

如果沒有,如果我在處理程序函數中創建一個子進程,如何在多次調用此 Lambda 函數之間獲取正在運行的子進程呢?

感謝您的澄清!

AWS Lambda 函數有可能在同一台機器上重新運行同一個容器,它甚至可以在 Lambda 停止運行容器時重新啟動正在容器中運行的進程。 在設計您的 Lambda 函數時要記住的重要一點是,這是不能保證的。 您必須編寫 Lambda 函數,以便它可以處理在另一台機器上的干凈環境中完成的后續執行。

請記住,AWS Lambda 函數將在運行 15 分鍾后停止。 請參閱: https : //docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html

您可以嘗試設計您的 Lambda,使其進行一些處理,然后將數據存儲在其他地方,然后啟動的下一個 Lambda 函數將在前一個 Lambda 完成后立即執行更多處理。 您通常希望將 Lambda 用於在執行更多處理之前等待特定事件或時間的工作負載。

使用 Lambda 的最佳用例之一是僅在需要時為處理能力付費。

對於您的用例,您可能需要考慮使用其他一些容器服務,例如:

EKS - https://aws.amazon.com/eks/或 ECS - https://aws.amazon.com/ecs/

或者甚至可以考慮 Elastic Beanstalk - https://aws.amazon.com/elasticbeanstalk/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM