kafka usage
personal cheat sheet, remember the steps.. Used with java, spring-boot, gradle.
start kafka
vanilla download on windows..
-
start zookeeper
bin\windows\zookeeper-server-start.bat config\zookeeper.properties
-
start kafka
bin\windows\kafka-server-start.bat config/server.properties
use in string boot
send
@Autowired
private KafkaTemplate<String, String> template;
this.template.send("myTopic", "foo1");
receive
@KafkaListener(topics = "myTopic")
public void listen(ConsumerRecord<?, ?> cr) throws Exception {
logger.info("received: " + cr.toString());
}
test with embedded kafka
@DirtiesContext
@EmbeddedKafka(partitions = 1,
topics = {
KafkaEmbeddedTest.SampleTopic })
// ...
@Autowired
private EmbeddedKafkaBroker embeddedKafka;
// ...
Map<String, Object> senderProps =
KafkaTestUtils.senderProps(embeddedKafka.getBrokersAsString());
ProducerFactory<Integer, String> pf = new DefaultKafkaProducerFactory<>(senderProps);
KafkaTemplate<Integer, String> template = new KafkaTemplate<>(pf);
template.setDefaultTopic(SampleTopic);
template.sendDefault("foo");