阅读 Apache Pulsar 上的分区主题

Reading partitioned topics on Apache Pulsar

我正在尝试 select 在 pulsar 和 kafka 之间进行 事件 sourcing/cqrs 场景,所以对于这类系统来说,一个非常重要的特性是从某个时间点或偏移量重播消息。

Kafka很简单,你只需要指明从什么点开始消费,或者干脆从一个起点寻找。

但是 pulsar 的工作方式不同,除了消费者界面它还有另一个称为读取界面的读取界面,用于从起点读取消息,例如 beggining 或 id,但它没有不适用于分区主题。

我的问题是,如何读取 Pulsar 上的分区主题?由于读取接口不适用于分区主题,我可以指定消费者的起点吗?

我正在 nodejs 客户端上测试这些功能,所以如果我因此失去了某些功能,请告诉我

如果您需要从特定分区读取,请在消费者设置主题时输入:

.topic(yourTopicName-partition-N)

其中 yourTopicName 是一个分区主题,N 是需要读取的分区。

node.js格式中,它应该是这样的,f.e,如果你想从分区1读取:

const consumer = await client.subscribe({
  topic: 'mytopic-partition-1',
  subscription: 'my-subscription',
});