微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在我们收到来自端点的有效响应之前,由于连接已关闭而无法调用 lambda

如何解决在我们收到来自端点的有效响应之前,由于连接已关闭而无法调用 lambda

尝试从运行 Python 程序的 AWS EC2 实例调用 AWS Lambda。 EC2 实例和 lambda 都在同一个 VPC 上。

from botocore.config import Config

adv_client_config = Config(read_timeout=60,connect_timeout=60,retries={'max_attempts': 0})

self.client = boto3.client(
            'lambda',region_name='us-east-1',config=adv_client_config
        )
response = self.client.invoke(
              FunctionName=function_name,InvocationType=invoke_type,Payload=json.dumps(request)
           )

InvocationType 是“RequestResponse”。仅当 'max_attempts' 设置为 0 时才会看到此行为。如果将其设置为某个值,则不会看到此行为。

调用 lambda 后 100 毫秒内调用失败。

解决方法

您的 lambda 需要很长时间才能冷启动。您可以使用 Provisioned Concurrency 保持温暖。您需要弄清楚为什么您的 lambda 从冷启动启动需要花费如此多的时间,以及您是否可以对此采取任何措施。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。