在不同环境中实施SQS的最佳做法是什么?

时间:2017-11-01 06:55:17

标签: amazon-web-services spring-boot amazon-sqs

我在java spring启动应用程序中实现了一个SQS队列。为了在不同的环境中实现,我接下来了。

  1. 为每个环境实施多个队列,以便对队列流量进行排序。
  2. 我在消息中传递env变量,如果在错误的环境中收到的消息抛出异常,我相信会将消息再次放入队列中。这种方法并不乐观,但由于消息数量较少,我也是这样认为的。
  3. 除此之外还有其他方法吗?

    这是我发现的链接之一,即2 = 1和半岁。 sharing SQS across multiple environments

1 个答案:

答案 0 :(得分:3)

使用多个队列。不要做选项2.

选项2很可能

  1. 通过不断接收和不处理消息来使您的环境变得饥饿(使它们对于真正需要它们的进程保持不可见)。
  2. 最终将大量消息放入死队列(假设你设置了这个,你应该这样做。)
  3. 队列是免费的。消息和数据传输不是。不要浪费你需要支付的东西。

    专用于特定应用/环境的每个队列意味着您可以为每个应用调整各种队列属性,而无需担心“这不是您正在寻找的消息”。