Kfaka生产者三种发送模式

tech2023-10-10  107

1、发送即忘记

只负责发送数据,不负责接收返回值。 Java代码实现

// 发送即忘记 kafkaProducer.send(producerRecord);

2、同步模式

发送消息后接收返回值,并根据返回值进行下一步操作。 Java代码实现

// 同步模式 RecordMetadata metadata = kafkaProducer.send(producerRecord).get(); System.out.println(metadata.topic()); System.out.println(metadata.partition()); System.out.println(metadata.offset()); System.out.println(metadata.timestamp());

3、异步模式

发送消息后由回调函数来进行下一步操作。 Java代码实现

// 异步模式 kafkaProducer.send( producerRecord, new Callback() { @Override public void onCompletion(RecordMetadata recordMetadata, Exception e) { if (e == null) { System.out.println(recordMetadata.toString()); } else { e.printStackTrace(); } } } );
最新回复(0)