Встречается на собеседованиях • сегодня

Какие плюсы и минусы Redis Pub/Sub с точки зрения устойчивости

Плюсы:

  • Простота и скорость: Минимальная задержка при передаче сообщений, так как Redis работает в памяти.
  • Гибкость: Поддержка множества подписчиков на один канал и возможность подписки на шаблоны (PSUBSCRIBE).
  • Легковесность: Нет необходимости в сложной настройке брокера сообщений.

Минусы:

  • Нетранзакционность: Если подписчик отключен во время публикации, сообщение теряется (нет механизма подтверждения доставки).
  • Отсутствие очереди: Сообщения не сохраняются, если нет активных подписчиков.
  • Ограниченная масштабируемость: При высокой нагрузке возможны проблемы с производительностью.

Пример:

python
import redis

r = redis.Redis()
pubsub = r.pubsub()
pubsub.subscribe('channel')

# Публикация
r.publish('channel', 'Hello!')  # Если подписчик offline, сообщение пропадет

# Подписка
for message in pubsub.listen():
    print(message)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы