簡體   English   中英

AWS Lambda的並發行為

[英]Concurrency behavior of AWS Lambda

假設我有這樣的代碼。

public class MyHandler {
    private Foo foo;
    public void handler(InputStream request, OutputStream response, Context context) {
       ...
    }
}

Foo foo負責創建池化數據庫連接。

我試圖了解它如何與AWS Lambda一起使用。 如果我理解正確, foo會在多個調用中共享。 第一個需要花費更多時間,因為它必須加載到容器中,后續的更快,因為foo已經初始化。 在我的處理程序在一段時間不活動后被踢出之前就是這種情況。

那么,對於順序調用,它是否會使用相同的對象,它是否可以訪問在早期函數調用中創建的/ tmp?

並行調用怎么樣? 它是否會復制整個容器,因為根據文檔,每個lambda函數應該在自己的容器,自己的資源和自己的/ tmp中執行?

如果處理程序在不活動后被踢出,是否有Java中的回調函數,我可以調用它來關閉所有打開的池連接?

那么,對於順序調用,它是否會使用相同的對象,它是否可以訪問在早期函數調用中創建的/ tmp?

是的它會使用相同的對象。 是的,它可以訪問在早期函數調用中創建的/tmp

並行調用怎么樣? 它是否會復制整個容器,因為根據文檔,每個lambda函數應該在自己的容器,自己的資源和自己的/ tmp中執行?

並行調用將在單獨的容器中進行。 單個容器一次只處理一次調用。 所以是的,整個容器將被復制,每個容器都有自己的/tmp

如果處理程序在不活動后被踢出,是否有Java中的回調函數,我可以調用它來關閉所有打開的池連接?

沒有沒有可用於處理此問題的回調。 當容器由於不活動而最終被移除時,您的功能將處於掛起狀態。

暫無
暫無

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

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