Shi*_*hti 4 amazon-web-services amazon-dynamodb aws-lambda
我有一个 Lambda 工作函数列表(比如 1000 个),每个函数同时运行并完成其工作。为了能够弄清楚所有工人的最终结果,我提出了这个想法。
在开始作业并生成 Lambda 辅助函数之前,我在 DynamoDB 中保存一条记录,例如两个属性:
total_number_of_jobs
jobs_completed
(初始设置为0)每个 Lambda 工作函数完成后,它都会将属性加jobs_completed
一。然后读取记录并检查是否total_number_of_jobs
等于jobs_completed
,如果是,则将记录放入SQS中。
我的问题是:
jobs_completed
我将在 UpdateItem API 调用中更新计数器,如下所示:
SET jobs_completed = jobs_completed + :incr_by
其中incr_by
将等于1
.
只要您使用 DynamoDB 原子计数器(如您的示例所示),并且检查 UpdateItem 调用的返回值而不是运行单独的查询,那么您建议的解决方案应该可以正常工作。
归档时间: |
|
查看次数: |
5581 次 |
最近记录: |