手動確認
此範例說明如何在消費者應用程式中手動確認偏移量。
此範例要求將 spring.cloud.stream.kafka.bindings.input.consumer.ackMode
設定為 MANUAL
。針對您的範例使用對應的輸入通道名稱。
@SpringBootApplication
public class ManuallyAcknowdledgingConsumer {
public static void main(String[] args) {
SpringApplication.run(ManuallyAcknowdledgingConsumer.class, args);
}
@Bean
public Consumer<Message<?>> process() {
return message -> {
Acknowledgment acknowledgment = message.getHeaders().get(KafkaHeaders.ACKNOWLEDGMENT, Acknowledgment.class);
if (acknowledgment != null) {
System.out.println("Acknowledgment provided");
acknowledgment.acknowledge();
}
};
}