Bird
Raised Fist0
Kafkadevops~10 mins

Message broker architecture in Kafka - Step-by-Step Execution

Choose your learning style10 modes available
Process Flow - Message broker architecture
Producer sends message
↓
Message broker (Kafka)
↓
Message stored in topic partition
↓
Consumer reads message
↓
Consumer processes message
This flow shows how a producer sends messages to Kafka, which stores them in topic partitions, and consumers read and process these messages.
Execution Sample
Kafka
producer.send('topic1', 'Hello Kafka')
# Kafka stores message
consumer.poll()
# Consumer reads message
A producer sends a message to a Kafka topic, Kafka stores it, and a consumer reads the message.
Process Table
StepActionComponentMessage StateOutput
1Producer sends message 'Hello Kafka' to 'topic1'ProducerMessage createdMessage sent to broker
2Broker receives messageKafka BrokerMessage stored in topic1 partitionAcknowledgement sent to producer
3Consumer polls 'topic1'ConsumerReads message from topic1 partitionMessage 'Hello Kafka' received
4Consumer processes messageConsumerMessage processedProcessing complete
5No more messagesConsumerNo new messagesPolling waits or ends
💡 No more messages in topic1, consumer polling ends or waits
Status Tracker
VariableStartAfter Step 1After Step 2After Step 3After Step 4Final
messageNone'Hello Kafka' created'Hello Kafka' stored in broker'Hello Kafka' read by consumer'Hello Kafka' processedProcessed
Key Moments - 2 Insights
Why does the consumer need to poll the broker to get messages?
Because Kafka stores messages in topics and consumers must request (poll) to receive new messages, as shown in step 3 of the execution_table.
What happens if the producer sends a message but the broker is down?
The message won't be stored and the producer won't get an acknowledgement, so the message is not confirmed as sent, unlike step 2 where the broker stores the message.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, at which step does the message get stored in Kafka?
AStep 1
BStep 2
CStep 3
DStep 4
💡 Hint
Check the 'Message State' column in step 2 where the message is stored in the topic partition.
According to variable_tracker, what is the state of 'message' after step 3?
A'Hello Kafka' read by consumer
BNone
C'Hello Kafka' processed
D'Hello Kafka' created
💡 Hint
Look at the 'After Step 3' column for 'message' in variable_tracker.
If the consumer never polls, what happens to the messages in Kafka?
AMessages are automatically deleted
BMessages are lost immediately
CMessages remain stored in the topic partition
DMessages are sent back to producer
💡 Hint
Kafka stores messages until consumers poll them, as shown in step 2 and 3.
Concept Snapshot
Message broker architecture in Kafka:
- Producers send messages to topics
- Kafka stores messages in partitions
- Consumers poll topics to read messages
- Messages remain until consumed or expired
- Broker acknowledges message receipt to producers
Full Transcript
This visual execution shows how a message flows in Kafka's message broker architecture. First, a producer creates and sends a message to a topic. The Kafka broker receives and stores the message in a topic partition, then acknowledges the producer. Consumers poll the broker to read messages from the topic. After reading, consumers process the messages. If no messages remain, polling waits or ends. Variables like 'message' change state from creation to processing. Key points include the need for consumers to poll to receive messages and the broker's role in storing messages reliably.

Practice

(1/5)
1. What is the main role of a message broker like Kafka in an application?
easy
A. To create user interfaces for applications
B. To send messages between different parts of an application reliably
C. To run complex calculations on data
D. To store large files permanently

Solution

  1. Step 1: Understand the purpose of a message broker

    A message broker helps different parts of an app communicate by sending messages.
  2. Step 2: Identify Kafka's role

    Kafka acts as a reliable middleman to send and store messages in order.
  3. Final Answer:

    To send messages between different parts of an application reliably -> Option B
  4. Quick Check:

    Message broker = reliable message passing [OK]
Hint: Message brokers connect apps by passing messages [OK]
Common Mistakes:
  • Thinking Kafka stores files permanently
  • Confusing message brokers with UI tools
  • Assuming Kafka does data calculations
2. Which of the following is the correct way to describe a Kafka topic?
easy
A. A user who sends messages to Kafka
B. A tool to monitor Kafka servers
C. A place where messages are stored and organized in order
D. A database table for storing user data

Solution

  1. Step 1: Define what a Kafka topic is

    A Kafka topic is a category or feed name where messages are stored in order.
  2. Step 2: Match the correct description

    Only A place where messages are stored and organized in order correctly describes a topic as a storage place for ordered messages.
  3. Final Answer:

    A place where messages are stored and organized in order -> Option C
  4. Quick Check:

    Kafka topic = ordered message storage [OK]
Hint: Topic = ordered message storage in Kafka [OK]
Common Mistakes:
  • Confusing topic with user or tool
  • Thinking topic is a database table
  • Mixing topic with monitoring tools
3. Given this Kafka setup: Producer sends messages to topic orders. Consumer reads from orders. What will the consumer receive if the producer sends messages ["order1", "order2"] in order?
medium
A. ["order1", "order2"]
B. No messages because consumer reads from a different topic
C. ["order2", "order1"]
D. An error because messages are unordered

Solution

  1. Step 1: Understand message order in Kafka topics

    Kafka keeps messages in the order they are sent within a topic.
  2. Step 2: Trace the messages sent and received

    Producer sends ["order1", "order2"] to topic orders. Consumer reads from the same topic, so it receives messages in the same order.
  3. Final Answer:

    ["order1", "order2"] -> Option A
  4. Quick Check:

    Kafka preserves message order = ["order1", "order2"] [OK]
Hint: Kafka keeps message order per topic [OK]
Common Mistakes:
  • Assuming messages arrive reversed
  • Thinking consumer reads from different topic
  • Believing Kafka does not guarantee order
4. You wrote code where a Kafka consumer tries to read from a topic but gets no messages. What is a likely cause?
medium
A. The consumer is subscribed to the wrong topic name
B. Kafka does not support consumers
C. Messages are deleted immediately after sending
D. Producer sends messages in the wrong format

Solution

  1. Step 1: Check consumer subscription

    If the consumer subscribes to a wrong or misspelled topic, it won't receive messages.
  2. Step 2: Evaluate other options

    Kafka supports consumers, messages are not deleted immediately, and format issues usually cause errors, not empty reads.
  3. Final Answer:

    The consumer is subscribed to the wrong topic name -> Option A
  4. Quick Check:

    Wrong topic subscription = no messages [OK]
Hint: Check topic name spelling for consumer subscription [OK]
Common Mistakes:
  • Assuming Kafka lacks consumer support
  • Thinking messages vanish instantly
  • Blaming message format without error
5. You want to ensure messages sent to Kafka are not lost even if a server crashes. Which Kafka feature helps achieve this?
hard
A. Sending messages without keys
B. Using a single broker to simplify management
C. Deleting messages immediately after consumption
D. Replication of topic partitions across multiple brokers

Solution

  1. Step 1: Understand message durability in Kafka

    Kafka replicates partitions of topics across multiple brokers to avoid data loss if one fails.
  2. Step 2: Evaluate options for reliability

    Single broker risks data loss, deleting messages early loses data, and keys don't affect durability.
  3. Final Answer:

    Replication of topic partitions across multiple brokers -> Option D
  4. Quick Check:

    Replication = message safety on server crash [OK]
Hint: Use replication to keep messages safe [OK]
Common Mistakes:
  • Thinking single broker is safer
  • Deleting messages early to save space
  • Ignoring replication importance
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard