AWS Lambda 实例如何扩展?
How do AWS Lambda instances scale?
我知道 AWS Lambda 应该将开发人员从基础设施中抽象出来。但是我不太明白缩放是如何工作的。
它会在高流量时自动启动新容器吗?
AWS Lambda 函数可以由许多不同的 event sources.
触发
AWS Lambda 运行 每个 Lambda 函数 运行 在其自己的环境中作为独立进程运行。默认限制为 100 个并发 Lambda 函数。
不用想Lambda"scaling"。相反,只要事件源(或您自己的应用程序)运行 是 Lambda 函数,就会创建环境,函数 运行,然后拆除环境。当没有任何东西在调用 Lambda 函数时,它不是 运行ning。当发生 100 次调用时,将有 100 个 Lambda 函数 运行.
它 "scales" 由 运行 在 AWS 基础设施上并行自动执行。您只需在函数处于 运行ning 时每 100 毫秒付费。 AWS 的工作是确保其后端基础设施扩展以支持所有客户 运行 的 Lambda 函数数量。
如果您想更改 Auto Scaling 组中所需实例的数量,您可以使用 botocore.session
import botocore.session
client = session.create_client('autoscaling')
client.set_desired_capacity(
AutoScalingGroupName='NAME',
DesiredCapacity=X,
HonorCooldown=True|False
)
https://docs.aws.amazon.com/cli/latest/reference/autoscaling/set-desired-capacity.html
我知道 AWS Lambda 应该将开发人员从基础设施中抽象出来。但是我不太明白缩放是如何工作的。
它会在高流量时自动启动新容器吗?
AWS Lambda 函数可以由许多不同的 event sources.
触发AWS Lambda 运行 每个 Lambda 函数 运行 在其自己的环境中作为独立进程运行。默认限制为 100 个并发 Lambda 函数。
不用想Lambda"scaling"。相反,只要事件源(或您自己的应用程序)运行 是 Lambda 函数,就会创建环境,函数 运行,然后拆除环境。当没有任何东西在调用 Lambda 函数时,它不是 运行ning。当发生 100 次调用时,将有 100 个 Lambda 函数 运行.
它 "scales" 由 运行 在 AWS 基础设施上并行自动执行。您只需在函数处于 运行ning 时每 100 毫秒付费。 AWS 的工作是确保其后端基础设施扩展以支持所有客户 运行 的 Lambda 函数数量。
如果您想更改 Auto Scaling 组中所需实例的数量,您可以使用 botocore.session
import botocore.session
client = session.create_client('autoscaling')
client.set_desired_capacity(
AutoScalingGroupName='NAME',
DesiredCapacity=X,
HonorCooldown=True|False
)
https://docs.aws.amazon.com/cli/latest/reference/autoscaling/set-desired-capacity.html