2017-10-13 37 views
0

當考慮內存/請求的lambda成本時,是否有任何證據表明具有包含很多包的較大函數vs包含最小包的許多較小函數是更好的選擇?lambda node.js包含許多包的單個函數與包含最小包的許多函數

例如

script A has 1(aws-sdk) + 9 required packages to complete 4 steps 
-> this would be a single script request with a longer execution time (and larger memory requirement? 

VS

4 scripts with three packages each 1(aws-sdk) + two required packages to complete 4 steps 
-> this would be multiple single script requests with a shorter execution time (and less memory requirement? 

回答

1

它很難推薦是否使用更大的功能,而無需去到細節的確切方案。但是,一般而言,不是基於文件大小來查看功能劃分,而是根據業務功能和可維護性劃分功能。

Lambda的賬單持續時間向上舍入到最接近的100毫秒。就成本而言,使用正確的文件大小(不能太小)執行足夠長的大功能是有意義的。另一方面,這會影響Lambda函數的初始冷啓動性能。 也有許多小功能使其難以維護。

因此,根據您的應用程序優先級成本和性能以及業務功能分組,將Lambda功能劃分爲無服務器微服務。