我有一个 AWS Lambda 函数,它调用Algorithmia上的深度学习函数,对结果进行一些后处理,然后返回一些数据。Algorithmia 提供了一个我正在使用的python 客户端,它使向 Algorithmia 平台上的算法发送请求变得更容易一些。
问题如下:当一个 Algorithmia 函数有一段时间没有被调用时,它被卸载并且第一次调用来预热它(冷启动)需要一段时间,可能是 30 秒。如果我的 Lambda 函数要等待 30 秒以等待响应,那么每当它碰巧从冷启动触发 Algorithmia 函数时,这将是非常昂贵和浪费的。
是否有某种方法可以在 Lambda 中发送 HTTP 请求,当请求完成时,结果会通过管道传输到新的 Lambda 函数中,这样就不需要 Lambda 函数一直等待并浪费资源?我不希望这样,因为我不确定这实际上是如何工作的 - 有没有人有其他想法来避免等待响应和浪费 Lambda 资源?
编辑:在大多数情况下(显然除了 Algorithmia 算法需要一段时间才能从冷启动加载的情况)延迟是一个问题,我无法通过使用 Algorithmia 函数编写它对 S3 的响应做一些变通方法来增加延迟(例如)然后触发 Lambda 函数。