【问题标题】:Using Apache Kafka in place of SQS使用 Apache Kafka 代替 SQS
【发布时间】:2020-07-16 11:41:50
【问题描述】:

我有一个应用程序使用 AWS SQS 和 Lambda 来处理推送到队列上的消息。 Lambda 不断轮询队列,当出现新消息时,它会处理该消息。

对于这种情况,是否可以在 AWS 上将 SQS 替换为 Kafka。换句话说,我们可以使用 Kafka 作为这个用例的队列吗?

【问题讨论】:

  • 您是否正在尝试克服 SQS/Lambda 的特定问题?

标签: amazon-web-services apache-kafka amazon-sqs aws-msk


【解决方案1】:

你绝对可以。看看 AWS Amazon Managed Streaming for Apache Kafka (Amazon MSK) 。它是 Apache Kafka 的托管服务。

至于 lambda 触发器,不幸的是它不是 built in trigger。您可以使用定期触发的 lambda 函数轻松复制行为,该函数检查消息是否可见,然后调用将处理消息或直接处理消息的函数。对于一些方向,你可以参考这个官方的guide,它设置了一个类似的管道,但是AWS MQ

【讨论】:

  • 它过去不是触发器,我们过去必须定期轮询。在过去的几年里,有人改变了这一点。现在我的队列触发了我的 lambda,我已经在生产系统中运行它几年了。
  • @RohitChatterjee,在幕后它仍然是 lambda 定期轮询队列,即它是基于拉取的架构与基于推送的架构。一旦 lambda 服务在 SQS 队列中获得消息,它就会将其包装在一个事件中并用它触发函数。
  • @gtango,如果答案确实解决了您的问题,您介意接受吗。这样,其他偶然发现此问题的人可以轻松找到解决方案。干杯。
猜你喜欢
  • 1970-01-01
  • 2019-07-01
  • 1970-01-01
  • 2010-10-31
  • 1970-01-01
  • 2020-08-12
  • 2021-03-28
  • 2018-11-05
  • 2016-12-10
相关资源
最近更新 更多