在aws sqs

时间:2016-09-12 17:03:46

标签: amazon-web-services amazon-sqs

我有一个架构,客户将上传一个文件或一组文件来处理S3,然后将文件移动(并解压缩/压缩/等)到更合适的S3存储桶,然后将一条消息放入来自lambda的SQS由计算引擎拾取。在大多数情况下,每个客户请求只生成一条消息。然而,可能存在这样的情况:客户将一次一个地将200个图像加载到相同的请求(所有200个图像是来自单个3D图像的切片)。这将生成200个lambda调用和200个消息。我的计算引擎可以多次处理相同的请求而没有问题,但我想避免处理相同的请求200次以上(每个这样的过程在大型ec2实例上花费大约5分钟)。

在亚马逊工具中是否有办法将具有相同消息体的队列中的消息合并到单个消息中?或者查看具有特定邮件正文的邮件的队列?

我唯一能想到的就是在我的目标S3存储桶中有一个“特殊”文件,它记录了lambda最后一次将此消息放入队列,但问题是,假设第一个图像切片来了在和我放入队列“做这个家伙”,50多个图像进来,我注意到“特殊”文件在那里,消息被拾取并开始处理,其余图像进入,然后处理完成在60个所需图像中只有50个失败,但队列中没有待处理的消息,因为我将它们全部封锁了......

或者,我只是吮吸它,让计算机运行200次,快速失败~199次,然后成功1次(或更多次)......

0 个答案:

没有答案