所以,使用AWS Lambda和ruby sdk,我可以这样调用一个函数:
Aws::Lambda::Client.new.invoke_async params
有没有办法查询当前运行的lambda实例的数量?
Aws::Lambda::Client.new.number_of_running_instances # returns 17
发布于 2019-06-13 03:56:10
您可以使用CloudWatch Metrics API列出AWS Lambda Metrics,包括并发执行的数量(命名空间:AWS/Lambda
,指标:ConcurrentExecutions
),但是有一个警告。如ConcurrentExecutions
指标文档中所述:
作为帐户中所有函数以及指定了自定义并发限制的函数的聚合指标发出的
。..。测量给定函数在给定时间点的并发执行总数。如果在一段时间内聚合,则必须将其视为平均指标。
因此,您必须通过在Lambda函数上设置并发限制来Manage Concurrency,然后才能查看特定函数的并发执行。另一方面,根据对问题的评论,这可能解决您在数据库阻塞时面临的问题。作为一个副作用,您可能不得不改为处理节流的Lambda调用。
https://stackoverflow.com/questions/56566633
复制相似问题