# Pub/Sub is at-most-once: a stopped listener loses messages --- Stop the listener container, then publish --- container.stop() $ redis-cli -p 6390 --no-raw PUBSUB NUMSUB news 1) "news" 2) (integer) 0 template.convertAndSend("news", "while you were away") = 0 receivers --- Start it again --- container.start() $ redis-cli -p 6390 --no-raw PUBSUB NUMSUB news 1) "news" 2) (integer) 1 messages the listener has: [] --- Once it is back, messages flow again --- template.convertAndSend("news", "welcome back") = 1 receiver @RedisListener got 'welcome back'