Bird
Raised Fist0
Redisquery~5 mins

PUBLISH to channels in Redis

Choose your learning style10 modes available
Introduction

Publishing to channels lets you send messages instantly to many listeners. It helps different parts of a program talk to each other easily.

You want to send a notification to many users at once, like a chat message.
You need to update multiple parts of your app when data changes, like live scores.
You want to trigger actions in other services when something happens, like sending an email.
You want to broadcast alerts or warnings to all connected clients.
You want to build a real-time feed that many users can watch simultaneously.
Syntax
Redis
PUBLISH channel message

channel is the name of the channel to send the message to.

message is the text you want to send.

Examples
Sends the message "Hello subscribers!" to the channel named "news".
Redis
PUBLISH news "Hello subscribers!"
Sends an update message to the "updates" channel.
Redis
PUBLISH updates "New version available"
Sends an alert message to the "alerts" channel.
Redis
PUBLISH alerts "Warning: High CPU usage"
Sample Program

This example shows subscribing to the "news" channel in one client and then publishing two messages to it from another client. The subscriber will receive both messages.

Redis
# Subscriber (run in one client):
SUBSCRIBE news

# Publisher (run in another client):
PUBLISH news "Hello subscribers!"
PUBLISH news "Second message"
OutputSuccess
Important Notes

The PUBLISH command returns the number of clients that received the message.

Publishing is fast and does not store messages; if no clients are listening, the message is lost.

Use PUBLISH when you want real-time communication without saving messages.

Summary

PUBLISH sends messages to all clients listening on a channel.

It is useful for real-time notifications and broadcasts.

Messages are not saved; only connected subscribers get them.

Practice

(1/5)
1.

What does the PUBLISH command do in Redis?

easy
A. Stores a message permanently in the database
B. Sends a message to all clients subscribed to a specific channel
C. Deletes all messages from a channel
D. Creates a new channel for clients to subscribe

Solution

  1. Step 1: Understand the purpose of PUBLISH

    The PUBLISH command sends messages to clients currently subscribed to a channel.
  2. Step 2: Differentiate from storage commands

    PUBLISH does not store messages permanently; it only broadcasts to active subscribers.
  3. Final Answer:

    Sends a message to all clients subscribed to a specific channel -> Option B
  4. Quick Check:

    PUBLISH broadcasts messages [OK]
Hint: PUBLISH sends messages only to active subscribers [OK]
Common Mistakes:
  • Thinking PUBLISH stores messages permanently
  • Confusing PUBLISH with channel creation
  • Assuming PUBLISH deletes messages
2.

Which of the following is the correct syntax to publish a message 'Hello World' to a channel named news in Redis?

?
easy
A. PUBLISH news 'Hello World'
B. PUBLISH 'Hello World' news
C. PUBLISH news Hello World
D. PUBLISH news, 'Hello World'

Solution

  1. Step 1: Recall Redis PUBLISH syntax

    The syntax is: PUBLISH channel message. Quote the message if it contains spaces.
  2. Step 2: Identify correct option

    PUBLISH news 'Hello World' matches the syntax exactly.
  3. Final Answer:

    PUBLISH news 'Hello World' -> Option A
  4. Quick Check:

    Correct Redis PUBLISH syntax = PUBLISH news 'Hello World' [OK]
Hint: Quote messages with spaces: PUBLISH channel 'msg with spaces' [OK]
Common Mistakes:
  • Not quoting messages with spaces
  • Swapping channel and message order
  • Using commas or extra symbols
3.

Given the following Redis commands executed in order:

SUBSCRIBE sports
PUBLISH sports "Game tonight"
PUBLISH news "Weather update"

What messages will the subscriber receive?

medium
A. Only "Game tonight"
B. Both "Game tonight" and "Weather update"
C. Only "Weather update"
D. No messages

Solution

  1. Step 1: Identify subscribed channel

    The subscriber is subscribed to the 'sports' channel only.
  2. Step 2: Check published messages

    Messages published to 'sports' are received; messages to 'news' are ignored by this subscriber.
  3. Final Answer:

    Only "Game tonight" -> Option A
  4. Quick Check:

    Subscribers get messages only from their channels [OK]
Hint: Subscribers get messages only from their subscribed channels [OK]
Common Mistakes:
  • Assuming subscriber gets all published messages
  • Confusing channel names
  • Ignoring subscription context
4.

What is wrong with this Redis command to publish a message?

PUBLISH

Choose the best explanation.

medium
A. PUBLISH cannot be used without SUBSCRIBE
B. Channel name is invalid
C. Message is too long
D. Missing channel and message arguments

Solution

  1. Step 1: Check required arguments for PUBLISH

    PUBLISH requires two arguments: channel and message.
  2. Step 2: Identify missing parts in the command

    The command only has PUBLISH with no arguments, so it is incomplete.
  3. Final Answer:

    Missing channel and message arguments -> Option D
  4. Quick Check:

    PUBLISH needs channel and message [OK]
Hint: PUBLISH needs channel and message arguments [OK]
Common Mistakes:
  • Thinking PUBLISH works without arguments
  • Assuming message length causes error here
  • Believing SUBSCRIBE is required before PUBLISH
5.

You want to send a notification to multiple channels news and alerts at once. Which Redis approach is best?

hard
A. Create a new channel combining both names and publish once
B. Publish to one channel and expect all subscribers to receive it
C. Use multiple PUBLISH commands, one per channel
D. Use a Redis command to publish to multiple channels simultaneously

Solution

  1. Step 1: Understand Redis PUBLISH limitations

    Redis PUBLISH sends messages to one channel at a time; no built-in multi-channel publish exists.
  2. Step 2: Choose correct method to notify multiple channels

    Send separate PUBLISH commands for each channel to reach all subscribers.
  3. Final Answer:

    Use multiple PUBLISH commands, one per channel -> Option C
  4. Quick Check:

    Multiple channels need multiple PUBLISH calls [OK]
Hint: Publish separately to each channel for multiple notifications [OK]
Common Mistakes:
  • Expecting one PUBLISH to reach multiple channels
  • Combining channel names incorrectly
  • Assuming Redis supports multi-channel publish natively
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