Bird
Raised Fist0
Redisquery~20 mins

SUBSCRIBE to channels in Redis - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Redis Pub/Sub Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ query_result
intermediate
1:30remaining
What is the output of subscribing to a single channel?
You run the command SUBSCRIBE news in Redis CLI. What will be the first message you receive?
Redis
SUBSCRIBE news
A["unsubscribe", "news", 0]
B["message", "news", "Hello World"]
C["error", "unknown command"]
D["subscribe", "news", 1]
Attempts:
2 left
💡 Hint
When you subscribe, Redis confirms the subscription first.
❓ query_result
intermediate
1:30remaining
What happens when you subscribe to multiple channels?
You run SUBSCRIBE sports weather. What is the output after subscribing?
Redis
SUBSCRIBE sports weather
A["subscribe", "sports", 1]
B["subscribe", "sports", 2]
C["subscribe", "weather", 2]
D["message", "sports", "Game tonight"]
Attempts:
2 left
💡 Hint
Redis sends a confirmation for each channel subscribed, increasing the count.
📝 Syntax
advanced
2:00remaining
Which command syntax correctly subscribes to channels with patterns?
You want to subscribe to all channels starting with 'news.'. Which command is correct?
APSUBSCRIBE news.*
BSUBSCRIBE news.*
CSUBSCRIBE 'news.*'
DPSUBSCRIBE 'news'
Attempts:
2 left
💡 Hint
Pattern subscriptions use a special command starting with P.
🔧 Debug
advanced
1:30remaining
Why does this subscription command fail?
You run SUBSCRIBE without any channel names. What error do you get?
Redis
SUBSCRIBE
A(error) ERR syntax error
B(error) ERR no channels specified
C(error) ERR wrong number of arguments for 'subscribe' command
D(error) ERR unknown command 'SUBSCRIBE'
Attempts:
2 left
💡 Hint
Redis commands require at least one channel name for SUBSCRIBE.
🧠 Conceptual
expert
2:00remaining
What is the behavior of Redis SUBSCRIBE command regarding message delivery?
Which statement correctly describes how Redis delivers messages to subscribers?
AMessages published to a channel are delivered only to clients subscribed to that exact channel.
BMessages published to a channel are delivered to all clients, regardless of subscription.
CMessages published to a channel are delivered only to clients subscribed to matching patterns, not exact channels.
DMessages published to a channel are stored and delivered later when clients subscribe.
Attempts:
2 left
💡 Hint
Think about how pub/sub works in real time.

Practice

(1/5)
1. What does the Redis SUBSCRIBE command do?
easy
A. Connects the client to one or more channels to receive messages
B. Deletes a channel and all its messages
C. Saves the current database state to disk
D. Lists all keys matching a pattern

Solution

  1. Step 1: Understand the purpose of SUBSCRIBE

    The SUBSCRIBE command is used to listen to messages published on channels in Redis.
  2. Step 2: Identify the correct function

    Only Connects the client to one or more channels to receive messages describes connecting to channels to receive live messages, which matches SUBSCRIBE's purpose.
  3. Final Answer:

    Connects the client to one or more channels to receive messages -> Option A
  4. Quick Check:

    SUBSCRIBE = Connect to channels [OK]
Hint: SUBSCRIBE means listen to channels for messages [OK]
Common Mistakes:
  • Confusing SUBSCRIBE with deleting or saving data
  • Thinking SUBSCRIBE lists keys
  • Assuming SUBSCRIBE modifies data
2. Which of the following is the correct syntax to subscribe to channels 'news' and 'sports' in Redis CLI?
easy
A. SUBSCRIBE('news', 'sports')
B. SUBSCRIBE news sports
C. subscribe news, sports
D. SUBSCRIBE TO news AND sports

Solution

  1. Step 1: Recall Redis CLI command format

    Redis commands are typed in uppercase followed by arguments separated by spaces.
  2. Step 2: Match syntax with options

    SUBSCRIBE news sports matches the correct Redis CLI syntax: SUBSCRIBE news sports. Other options use incorrect syntax or punctuation.
  3. Final Answer:

    SUBSCRIBE news sports -> Option B
  4. Quick Check:

    Correct Redis CLI syntax = SUBSCRIBE news sports [OK]
Hint: Use uppercase command and space-separated channels [OK]
Common Mistakes:
  • Using parentheses like a function call
  • Adding commas between channels
  • Using extra keywords like TO or AND
3. You want to listen to messages from channels 'chat', 'alerts', and 'updates' simultaneously. Which Redis command should you use to subscribe to all three channels at once?
easy
A. SUBSCRIBE [chat alerts updates]
B. SUBSCRIBE chat; SUBSCRIBE alerts; SUBSCRIBE updates
C. SUBSCRIBE TO chat, alerts, updates
D. SUBSCRIBE chat alerts updates

Solution

  1. Step 1: Recall how to subscribe to multiple channels

    Redis SUBSCRIBE accepts multiple channel names separated by spaces in one command.
  2. Step 2: Evaluate options for correctness

    SUBSCRIBE chat alerts updates uses correct syntax: SUBSCRIBE chat alerts updates. Other options use invalid syntax or multiple commands unnecessarily.
  3. Final Answer:

    SUBSCRIBE chat alerts updates -> Option D
  4. Quick Check:

    One SUBSCRIBE with multiple channels = SUBSCRIBE chat alerts updates [OK]
Hint: List all channels after SUBSCRIBE separated by spaces [OK]
Common Mistakes:
  • Using commas or brackets in channel list
  • Trying multiple SUBSCRIBE commands instead of one
  • Adding extra keywords like TO
4. What will happen if a client executes the following Redis commands?
SUBSCRIBE sports
PUBLISH sports "Game tonight!"
medium
A. An error occurs because PUBLISH cannot be used after SUBSCRIBE
B. The client publishes the message but does not receive it
C. The client receives the message "Game tonight!" on the 'sports' channel
D. The client unsubscribes from the 'sports' channel

Solution

  1. Step 1: Understand SUBSCRIBE effect

    After SUBSCRIBE sports, the client enters pub/sub mode where it can receive messages published to subscribed channels.
  2. Step 2: Check PUBLISH behavior

    PUBLISH can be executed by any client, including the one subscribed. The client will receive the message "Game tonight!" on the 'sports' channel.
  3. Final Answer:

    The client receives the message "Game tonight!" on the 'sports' channel -> Option C
  4. Quick Check:

    SUBSCRIBE then PUBLISH = client receives message [OK]
Hint: After SUBSCRIBE, client receives published messages on subscribed channels [OK]
Common Mistakes:
  • Thinking PUBLISH works and client receives own message
  • Assuming PUBLISH succeeds but client doesn't receive
  • Believing PUBLISH causes unsubscribe
5. A developer runs this Redis command: SUBSCRIBE without any channel names. What is the result?
medium
A. Syntax error: SUBSCRIBE requires at least one channel
B. The client unsubscribes from all channels
C. The client subscribes to all channels
D. The command is ignored and no subscription happens

Solution

  1. Step 1: Check SUBSCRIBE command requirements

    SUBSCRIBE must be followed by at least one channel name to subscribe to.
  2. Step 2: Identify error from missing arguments

    Running SUBSCRIBE alone causes a syntax error because no channels are specified.
  3. Final Answer:

    Syntax error: SUBSCRIBE requires at least one channel -> Option A
  4. Quick Check:

    SUBSCRIBE needs channels = syntax error if missing [OK]
Hint: SUBSCRIBE needs channels; missing channels cause syntax error [OK]
Common Mistakes:
  • Assuming SUBSCRIBE with no args subscribes to all channels
  • Thinking it unsubscribes instead
  • Believing command is ignored silently
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