确认队列为空 - Amazon Simple Queue Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

确认队列为空

在大部分情况下,您可以使用长轮询来确定队列是否为空。在极少数情况下,即使队列仍包含消息,您也可能会收到空响应,特别是如果接收消息等待时间创建队列时。此部分介绍如何确认队列为空。

确认队列为空(控制台)

  1. 阻止所有生产者发送消息。

  2. 打开 Amazon SQS 控制台https://console.aws.amazon.com/sqs/

  3. 在导航窗格中,选择 Queues (队列)。

  4. 在存储库的队列页面上,选择队列。

  5. 选择 Monitoring 选项卡。

  6. 在 “监视” 仪表板的右上角,选择 “刷新” 符号旁边的向下箭头。从下拉菜单中,选择自动刷新。离开刷新间隔at1 分钟

  7. 观察以下仪表板:

    • 延迟的消息大致数

    • 不可见的消息大致数

    • 可见消息的大致数

    当他们都显示0值,说明队列为空。

要确认队列为空 (Amazon CLI、AmazonAPI)

  1. 阻止所有生产者发送消息。

  2. 重复运行以下命令之一:

  3. 观察以下属性的指标:

    • ApproximateNumberOfMessagesDelayed

    • ApproximateNumberOfMessagesNotVisible

    • ApproximateNumberOfMessagesVisible

    当他们都是0,说明队列为空。

如果您依赖 Amazon CloudWatch 指标,请确保在将队列视为空之前看到多个连续零数据点。有关 CloudWatch 指标的更多信息,请参阅Amazon SQS 的可用 CloudWatch 指标