【问题标题】:Does Queue services like Kafka, Amazon SQS use some datastore to store messages?Kafka、Amazon SQS 等队列服务是否使用一些数据存储来存储消息?
【发布时间】:2020-12-28 11:58:30
【问题描述】:

您知道任何队列服务在后台是如何工作的吗?他们是否将消息存储在某个数据存储中?例如。 Amazon SQS 将消息保留在其队列中,直到任何工作人员从 SQS 中提取这些消息。

它在幕后存储在哪里?我认为在一些数据存储中,如 Dynamodb 或 RDS。这样说对吗?是否有任何资源可以让我更深入地了解一般队列服务的设计是什么样的?

【问题讨论】:

  • 这可能是亚马逊专有的。 SQS 比 DynamoDB 或 RDS 早几年就存在了,所以至少最初它背后还有其他东西。一般来说,队列后面可能有某种持久性存储,但它可能像文件一样简单。 AWS 明天可能会改变它,这应该没关系。

标签: message-queue amazon-sqs


【解决方案1】:

我设计了 SQS 复制数据存储。这是为消息传递用例量身定制的完全定制的实现。关系数据库不适合高吞吐量队列。

很遗憾,我无法分享数据存储或复制算法的详细信息,因为亚马逊从未将其公开。

Kafka 是开源的,因此您可以获取有关其store design 的信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-15
    • 2012-05-09
    • 1970-01-01
    • 2018-01-29
    • 2017-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多