如何提高AWS Lambda服务的性能



我已经在Java中创建了简单的lambda函数,并使用API网关公开了它。 60 ms 中的Lambda功能的计费持续时间,API网关 40 ms 更多地响应响应,因此延迟为 100 ms

注意:内存大小:1.5GB最大内存:40 MB。这里提到的所有响应时间是lambda在温暖状态(活动)

如果我们在 aws api网关中测试延迟它的 100 ms

如果我们在我的本地计算机中在 REST客户端进行测试,则延迟为 1500 ms

如果我们在 ec2实例中使用(呼叫)同一区域和同一帐户中的lambda函数,则延迟为 200 ms

为什么在REST客户端中发生这种差异,我们知道原因是网络延迟。我该如何提高其性能,因为我们需要在本机应用中消耗此lambda功能。

用于在同一区域和同一帐户中部署在 ec2实例中的Web应用程序,我们得到了公平响应,即* 200 ms

简短答案:您现在最好的选择是在尽可能靠近客户的区域中部署lambda

长答案:这是任何基于Web的应用程序的问题,而不仅仅是lambda/api网关。有一些技术可以对抗这一点。

  • 缓存内容。API网关会自动带有云的发行版,因此,如果您缓存响应,它们是从最近的POP提供给客户端的。

  • 多区域部署。如果您在许多分散地理位置中都有客户端,则可以在这些区域中部署LAMDA API网关

  • lambda @Edge。目前仅在预览中,并且仅支持Node.js,但对于从最近的POP

  • 响应请求的理想选择是理想的选择。

最新更新