我们正在基于过滤器策略将SNS用作针对多个消费者的通知服务。
当我们为消费者更新过滤器策略时,我们有一个有关事件传递的查询。用例如下:
一个SQS正在基于一个过滤器从SNS读取事件,但是现在我们需要使用相同的过滤器策略添加新的SQS,并从SNS中删除现有过滤器的订阅。
SNS ------ FilterPolicyA ----------------- SQS1
SNS ------ FilterPolicyA ----------------- SQS2
如前所述,过滤器策略将保持不变,但订阅SQS将会发生变化。
我们需要在更新SQS时确认从SNS到SQS的机上消息是否有任何事件丢失。例如,有些消息要传递到SQS1,但随着订阅的更新,现在SQS2已成为该订阅的一部分,因此SQS2将接收这些消息,或者从建立订阅时开始接收消息。
我们如何确保在此更新过程中不会错过任何机上活动。