2016-06-15 31 views
0

我有一个(Nodejs 4.3)lambda函数,我已经测试了几个内存限制设置(128,256,512)。AWS Lambda内存vs执行时间

当我拉起内存限制时,执行时间会按预期降低。然而,使用的最大内存也下降了。每次我减少内存限制时,所用的执行时间和最大内存都会恢复。

有什么想法?试图找出如何实现我需要的执行时间,而不是过度支付。

回答

1

这是使用内存的节点虚拟机。如果可用,它将使用它(您可能可以在本地使用VM或Docker复制此方案)。我不会太担心,我不会建议尝试指示虚拟机做什么或者甚至考虑垃圾收集(无论如何,这对于Node.js来说都不容易)。节点是非常机会主义的内存是我所能说的。我会选择你需要的数量,以便得到合理的响应时间并将其留在那里。

我也许还得想象,在“温暖”运行时,如果内存设置较少,速度会提高,但“冷”运行会更高。所以在生产中,它可能不是一个大问题。

您可能希望开始分析您的代码并尝试对其进行优化......但同样,Node并不是真的希望开发人员担心机器上的资源。它试图为你优化。当你按这种方式结算时,这有点不幸。这是我希望Go本地支持Lambda的原因之一。