In this hands-on lab, we will have the opportunity to consume data from a Kafka topic using multiple consumers groups. One of these groups will have a single consumer, and the other will have two consumers. Going through this will provide a firsthand look at how different consumers and consumer groups handle messages in Kafka. Additionally, Kafka’s persistent data structure for storing messages offers a great deal of flexibility in terms of how we want to consume messages. We can use consumer groups to perform different operations against the same set of messages while also being able to scale each consumer application horizontally.
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Set Up the First Consumer Group with One Consumer
Set up the first consumer as the sole consumer in its group. Consume some messages and save the output to
/home/cloud_user/output/group1_consumer1.txt
.The format should look like this:
kafka-console-consumer --bootstrap-server localhost:9092 --topic inventory_purchases --group 1 > /home/cloud_user/output/group1_consumer1.txt
- Set Up a Second Consumer Group with Two Consumers
Create a consumer in a separate group, and store its output in
/home/cloud_user/output/group1_consumer1.txt
:kafka-console-consumer --bootstrap-server localhost:9092 --topic inventory_purchases --group 2 > /home/cloud_user/output/group2_consumer1.txt
Create a second consumer in the same group, and store its output in
/home/cloud_user/output/group2_consumer2.txt
:kafka-console-consumer --bootstrap-server localhost:9092 --topic inventory_purchases --group 2 > /home/cloud_user/output/group2_consumer2.txt