kafka3.0版本之后,可以不依賴zookeeper集群工作
- 方法:啟動kraft模式
- 鏈接:轉載博客
- 另,新版本客戶端代碼使用如下樣例,不再使用ProducerConfig和KeyedMessage,且使用KafkaProducer作為Producer的實現類
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.Producer;
import org.apache.kafka.clients.producer.ProducerRecord;
import java.util.Properties;
public class ProducerDemo {
public static void main(String[] args) throws InterruptedException {
Properties props = new Properties();
props.put("bootstrap.servers","hadoop01:9092,hadoop02:9092,hadoop03:9092");
props.put("metadata.broker.list","hadoop01:9092,hadoop02:9092,hadoop03:9092");
props.put("serializer.class","kafka.serializer.StringEncoder");
props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");
Producer<String,String> producer = new KafkaProducer<String,String>(props);
for (int i = 1; i < 1000; i++) {
Thread.sleep(500);
producer.send(new ProducerRecord<String,String>("mygirls","I say I love you baby for"+i+"time"));
}
}
}
- 注:一定要設置key.serializer和value.serializer還有bootstrap.servers,這些參數之前是沒有的,使用新版本時需要配置
希望對后來人有所幫助
以上
/抱拳