为什么在 Amazon SQS 中看到同一 Amazon S3 事件的重复消息?

1 分钟阅读
0

我在 Amazon Simple Queue Service(Amazon SQS)中看到了同一 Amazon Simple Storage Service(Amazon S3)事件的重复消息。

解决方法

Amazon S3 使用内置回退和重试机制来传送通知。极少数情况下,重试机制可能会导致同一对象事件的重复通知。

Amazon S3 以包含序列器键的 JSON 对象形式发送事件通知。序列器键是一个十六进制值,允许您确定对象键的事件顺序。使用序列器键来识别同一对象的 PUT 和 DELETE 的事件序列。特定对象事件的重复事件通知具有与序列器键相同的值。

若要确定事件发生的顺序,请比较同一对象键上两个事件通知中的序列器字符串。序列号十六进制值较大的事件通知是稍后发生的事件。

注意:

  • 不能使用序列器键来确定不同对象键之间的事件顺序。
  • 序列器的长度可能不同。要比较这些值,请在较短的值上加上零,然后进行字典比较。

对于识别重复通知的应用程序,维护使用事件通知的 S3 对象的辅助数据库或者索引。然后,存储并比较序列器键值,以在每个事件通知处理时检查是否重复。

AWS 官方
AWS 官方已更新 1 年前