Sli*_*ppy 4 amazon-sqs amazon-web-services dead-letter
尝试为我的 AWS SQS 队列及其关联的死信队列编写一些测试。我想在测试中以某种方式强制将消息从队列发送到其 DLQ,然后从 dlq 中读取消息以查看消息是否存在。
从 DLQ 读取没有问题。但是有谁知道一种快速简单的方法可以通过编程强制 sqs 队列向其关联的 DLQ 发送消息?
死信队列只是一个 SQS 队列,因此您可以像发送任何其他队列一样向它发送消息。
DLQ 在您创建普通队列时配置,并且您需要传递将用作 DLQ 的队列的 arn。
配置 DLQ 时,您可以设置maxReceiveCount(控制台上的最大接收数),即消息在移动到死信队列之前传递到源队列的次数。当ReceiveCount消息的 超过maxReceiveCount队列的 时,Amazon SQS 会将消息移动到死信队列。
如果想要测试将消息发送到 DLQ 的过程,您需要在测试中强制在队列消息处理过程中出现错误,以将消息发送到 DLQ 队列,这将是了解错误是否会发生的最佳方法。队列正确。
向DLQ发送消息的过程可以通过以下方式完成:
如果您发现某些错误并且当时不想处理消息或删除消息,则可以显式向 DLQ 发送消息。
如果您读取消息的次数多于且不maxReceiveCount处理消息(从队列中读取和删除),AWS SQS 服务将了解您在该消息上遇到问题,并将自动为您发送到 DLQ。(例如 maxReceiveCount 等于 1 并且您已阅读该消息并且没有删除 2 次)
要了解有关 DLQ 的更多信息,请查看此处:Amazon SQS 死信队列。
| 归档时间: |
|
| 查看次数: |
7720 次 |
| 最近记录: |