自动删除SQS队列

2024-03-05

有没有办法完全自动删除 SQS 队列。我有一个解决方案,其中服务器在启动时创建 SQS 并订阅 SNS 主题。

然而,可能存在服务器崩溃且无法恢复的情况。在这种情况下,我会用另一台服务器替换该服务器,该服务器会在启动时创建自己的队列。现在之前的队列将不再使用。

有没有办法让队列在我明确删除它的情况下自动删除(也许就像如果队列保持空 5 天,它会被自动删除或其他替代方案)?


目前,AWS SQS 不提供在队列为空一定天数时自动删除队列的机制。即使我觉得这是一个必要的功能。但有一些方法可以解决这个问题。

下面提到了根据您问题中的场景删除AWS SQS的几种方法。您可以选择最适合您的。

  1. 维持小Database保持的表服务器 IP 和队列 URL 之间的映射。当服务器自行启动时,您可以将值插入到该表中。维持一个云观察将调用的规则Lambda,它将检查表中的值以查看服务器是否正在运行(可能通过心跳)。如果特定服务器没有运行,只需获取相关的SQS URL and 删除该特定队列。 (我在这里推荐Lambda,因为它便宜)

sqs.deleteQueue(new DeleteQueueRequest(myQueueUrl));

  1. 每当服务器启动时,它可以发送一个Email向具有服务器 IP 和 SQS URL 的人使用SNS。用一个CloudWatch规则,调用一个Lambda时不时地获取所有实例,并检查是否有任何实例已关闭。如果某个实例已关闭,请使用 SNS 向相关人员发送电子邮件,告知该服务器已关闭。它是半自动的,用户可以在看到电子邮件后手动删除队列。

  2. 只需让空队列独立即可。 AWS 内部可以创建的队列数量没有限制。那么,如果这个过程很困难,为什么要费力删除它们呢?只需在进行过程中创建新的队列即可。 (看:无最大SQS队列数限制 https://stackoverflow.com/a/14367090/4388776)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自动删除SQS队列 的相关文章

随机推荐

  • 无法在属性初始值设定项中使用实例成员

    我写了一个自定义UIView我发现了一个奇怪的问题 我认为这涉及到一个非常基本的概念 但我就是不明白 叹息 class ArrowView UIView override func draw rect CGRect let arrowPat
  • 基于 R 中字符串比较的相似度分数(编辑距离)

    我正在尝试根据两个字符串之间的比较来分配相似度分数 R 中是否有相同的函数 我知道 SAS 中有一个名为 SPEDIS 的函数 如果R中有这样的函数 请告诉我 功能adist http stat ethz ch R manual R pat
  • 将 Data.Constraint.Forall 与等式约束一起使用

    假设我有一个这样的函数 LANGUAGE ScopedTypeVariables class C a where foo forall f a b C f a C f b gt f a gt f b foo 现在 如果我想移动范围a and
  • 用于 Web 服务的 SOAP 还是 REST? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 REST 是一种更好的 Web 服务方法还是 SOAP 或者它们是针对不同问题的不同工具吗 或者这是一个微妙的问题 也就是说 一个在某些领域比另
  • Appfabric WF4-WCF服务,如何在没有httpcontext的情况下检索codeactivity中的当前url?

    我开发了一个带有代码活动的 wf wcf 服务 我想在其中检索该服务的当前 URL 如果我禁用 appfabric 的持久性功能 我可以使用以下命令检索 URL HttpContext Current Request Url ToStrin
  • Swift - 协议作为按钮操作的目标类型

    我正在尝试创建 HeaderView 它是 UIView 的子类 它包含一个关闭按钮和一个标题标签 class HeaderView UIView private var titleLabel UILabel private var clo
  • 无法将 _InternalLinkedHashMap 转换为任何内容

    尽管我首先将其作为地图上传 但从 Firebase RealtimeDatabase 获取数据作为地图时遇到了一些问题 我看到的所有解决方案都是您应该将 snapshot value 转换为传入的数据类型 但对我来说没有任何迭代 我已经可以
  • 如何将 MongoDB 与 Solr 集成?

    我以前见过这个问题 但从未收到真正的答案 所以我想知道 有人可以指出我如何将 mongoDB 与 Solr 集成的正确方向吗 我正在寻找伪实时和最终的一致性 做过这件事的人可以透露一些信息吗 如果有帮助的话 我还将 PHP Zend 与 D
  • 如何使用 Rails 2.1 和 MySQL 定义 BigInt 主键?

    从 Rails 2 1 开始 如果您在迁移中定义一个新列 其类型设置为 integer 且 limit 设置为 5 或更多 则在 MySQL 数据库中实际创建的列将是 BigInt 类型 那很完美 但我不知道如何创建具有 BigInt 主键
  • 高级错误处理

    我最近摆了个姿势这个问题 https stackoverflow com questions 15295004 disregarding simple warnings errors in trycatch noredirect 1 com
  • 使用 Java 为 Blogger API 验证自己的 Google 帐户

    我想编写一个将本地文件发布到 Google Blogger 的机器人 我将是唯一使用此应用程序的人 因此我不需要设置用户友好的身份验证例程 我花了一个晚上尝试进行设置 但仍然在处理 OAuth 请求方面遇到困难 我创建了一个新的 Googl
  • 现代 OpenGL 相当于 glBegin/glEnd 的是什么

    我正在为 OpenGL 构建一个图形 API 它基于基本的调用绘制图形样式 基本上 不是将数据存储到 GPU 中 并使用它的句柄调用它 而是提供信息来绘制每次更新应该绘制的内容 我知道它很慢 但它很简单 而且适用于非性能关键型应用程序 无论
  • 正则表达式:如何匹配不仅仅是数字的字符串

    是否可以编写一个正则表达式来匹配所有不匹配的字符串only包含数字 如果我们有这些字符串 abc a4c 4bc ab4 123 它应该匹配第一个 但不是最后一个 我尝试在 RegexBuddy 中摆弄前瞻之类的东西 但我似乎无法弄清楚 d
  • 如何在关系数据库中建模多语言实体

    如果我们要开发一个多语言应用程序 我们应该将翻译存储在资源文件 or the database 假设我们选择在数据库中进行 是否有一种标准方法来建模多语言实体关系模型 1 一张大翻译表 我们可以将所有翻译存储在一张表中并使用语言中立键为属性
  • Flexbox行:不根据内容增长? [复制]

    这个问题在这里已经有答案了 我有以下结构 我想了解为什么我的行不随其内部内容增长 row border solid red display flex flex direction row cell border solid green fl
  • 在 Maps API 浏览器上设置 HTTP Referrer 会导致 403 错误

    我对 HTTP Referrer 设置如何在 Google Maps API 浏览器密钥上工作感到困惑 我正在构建一个网页 以编程方式从 Google 地图请求图像 主要是 Google 地图街景图像 API 但也从 Javascript
  • spring-boot-starter-web 和 spring-boot-starter-webflux 不能一起工作吗?

    当我开始学习spring webflux 我对这个组件有疑问 我建立了一个简单的项目 使用maven来管理它 我添加了相关的依赖项spring boot starter web and spring boot starter webflux
  • Rufus 调度程序未登录生产环境

    我的 Rails 应用程序在初始化程序中使用 rufus scheduler 启动一个进程 这是初始化程序代码的精简版本 config logger isn t available here so we have to grab it fr
  • React 将 JQuery 代码应用于组件内的元素

    我有一个正在使用 React 的应用程序 我现在遇到一个问题 我正在尝试实施bootstrap 所见即所得 bootstrap3 所见即所得 https github com bootstrap wysiwyg bootstrap3 wys
  • 自动删除SQS队列

    有没有办法完全自动删除 SQS 队列 我有一个解决方案 其中服务器在启动时创建 SQS 并订阅 SNS 主题 然而 可能存在服务器崩溃且无法恢复的情况 在这种情况下 我会用另一台服务器替换该服务器 该服务器会在启动时创建自己的队列 现在之前