Amazon web services 使用Lambda按顺序处理S3事件
我正在设置一个S3桶。在这个S3存储桶中,数据将由外部进程写入 我正在设置一个AWS Lambda,当S3中的一个对象被创建/更新时,它将被触发,并将处理和存储数据到RDS中 我的问题如下: 如果对象在s3上写得太快,则可能存在多个Lambda函数 被同时触发 那么,在这种情况下,对象是否有可能不按照它们的顺序进行处理 是否写入S3存储桶 如果以上问题的答案是肯定的,那么对于Lambda,我必须将有效载荷推到Amazon web services 使用Lambda按顺序处理S3事件,amazon-web-services,amazon-s3,aws-lambda,Amazon Web Services,Amazon S3,Aws Lambda,我正在设置一个S3桶。在这个S3存储桶中,数据将由外部进程写入 我正在设置一个AWS Lambda,当S3中的一个对象被创建/更新时,它将被触发,并将处理和存储数据到RDS中 我的问题如下: 如果对象在s3上写得太快,则可能存在多个Lambda函数 被同时触发 那么,在这种情况下,对象是否有可能不按照它们的顺序进行处理 是否写入S3存储桶 如果以上问题的答案是肯定的,那么对于Lambda,我必须将有效载荷推到 FIFO SQS并设置一个侦听器来处理有效负载,以便最终将数据存储到RDS中。遗憾的是
FIFO SQS并设置一个侦听器来处理有效负载,以便最终将数据存储到RDS中。遗憾的是,它们不能保证有序。发件人: 事件通知不保证按照事件发生的顺序到达。但是,来自创建对象(PUTs)和删除对象的事件的通知包含一个sequencer,可用于确定给定对象键的事件顺序
在这种情况下,对于我的用例,我认为,我不能在Lambda中执行DB操作。我必须借助SQS FIFO队列,以便在处理事件时强制执行排序。我必须在队列上设置一个侦听器,在那里我必须实现DB操作。如果我错了,请纠正我。@Joy,是的。FIFO保证顺序,但仅在同一消息组内。所以你们的msg制作人必须确保它只将记录推送到组中。