如何在访问之前检查aws sqs队列是否可用?

How to check aws sqs queue is available before accessing it?

对不起,如果我听起来很菜鸟。但是我在我的项目中使用 docker 实现 localstack SQS,当队列尚未创建时我的服务器失败。

我做了一些研究,发现我们可以为其他容器添加健康检查。但是要添加healthcheck.

我不确定如何检查队列是否已成功创建?

只有健康检查成功后,它应该启动主容器

SQS 并不是真正为动态队列的用例设计的。一种方法是测试队列是否存在,如下所示:

#!/bin/bash
until aws sqs get-queue-url --queue-name bob; do
  sleep 10
done

您可以使用 CLI 列出可用队列。 aws sqs list-queues --queue-name-prefix My

{
   "QueueUrls": [
        "https://testurl.com/example/MyDeadLetterQueue",
        "https://testurl.amazonaws.com/example/MyQueue",
        "https://testurl.amazonaws.com/example/MyOtherQueue"
     ]
}

您可以使用 Commandeer 查看 localstack 的本地 SQS 它也适用于 AWS SQS。