我们正在使用AWS步骤功能实施流程。此过程中的一些任务需要很长时间。我们正在使用在ECS实例中运行的活动(工作人员)来执行此步骤。状态机是这样的:
触发器 - >步骤1(Lambda) - >步骤2(ECS) - >最后一步
有没有办法找到队列中等待step2工作人员接收的任务数量,并使用此信息自动扩展工作人员(ECS集群)?
答案 0 :(得分:2)
您可以致电api list_executions
获取正在运行的执行列表
而不是每次执行都会调用get_execution_history
。
在响应中,您可以迭代执行事件。
如果您在列表ActivityScheduled
中找到并且您没有看到ActivityStarted
,则表示正在等待工作人员执行此任务。
答案 1 :(得分:0)
我发现here是一个非常好的用例,并且可以实现自动缩放功能。
我将使用其中的一些见解,例如使用cloudwatch警报来设置获取当前状态(即按比例放大/按比例缩小决策);使用SQS来保存警报等。