首页 > 解决方案 > 管理来自 AWS Lambda 函数的 API 请求中的空闲时间

问题描述

我正在尝试在 AWS Lambda 上构建一个聊天机器人。

但是,我 90% 的 Lambda 持续时间在请求等待时间中丢失。

对于用户与我的聊天机器人的每次交互,我发送大约 3 个请求(1 个到 Dialogflow,2 个到 Messenger)。我必须等到这些请求完成,因为:

对于对我的 Lambda 函数的每个 API 调用,请求大约需要花费400ms我大部分时间等待的时间......

aws 请求持续时间

您对我如何避免每次等待 4000 毫秒有任何提示吗?也许我应该转向更常见的 ec2 实例。

我最初对无状态和 Lambda 真的很感兴趣,因为我认为它对聊天机器人很有意义,但是我在项目中添加的功能越多,我遇到的问题就越多(数据库连接真的很长......)

标签: amazon-web-servicesaws-lambdachatbot

解决方案


听起来你大部分时间都被卡住了。也许您可以做的一件事是尝试并行进行尽可能多的异步调用。听起来您的流程目前是这样的:

Event -> Dialogflow -> Messenger -> Messenger -> Finish

您可以尝试组合其中一些调用并并行执行它们:

Event -> Messenger -> Messenger -> Finish
      -> Dialogflow ->

推荐阅读