用例是:我有一个kafka流应用程序,它从一个输入主题消费,并输出到一个中间主题,然后在同一流中,另一个拓扑从这个中间主题消费。
每当更新应用程序id时,两个主题都会从最早的使用者开始。我想将中间主题的auto.offset.reset更改为最新,而将输入主题的设置保持为最早。
是。您可以通过以下方式为每个主题设置重置策略:
// Processor API
topology.addSource(AutoOffsetReset offsetReset, String name, String... topics);
// DSL
builder.stream(String topic, Consumed.with(AutoOffsetReset offsetReset));
builder.table(String topic, Consumed.with(AutoOffsetReset offsetReset));
所有这些方法都有一些允许设置它的重载