intermediate

Redis Streams и pub/sub для simpler cases

Используйте Redis Streams или pub/sub для simpler local systems только когда durability, replay, routing и operational requirements fit limits.

Redis pub/sub — fire-and-forget: офлайн-подписчики теряют сообщения. Redis Streams добавляют consumer group, опции persistence и приблизительный replay в пределах памяти — подходят для лёгких event-пайплайнов рядом с кешем.

Выбирайте Redis для messaging только при умеренных требованиях к durability, сложности маршрутизации и зрелости эксплуатации. Подходит: real-time fan-out в небольшой системе, ленты с коротким retention или прототип до выделенного брокера.

На интервью: объясните, почему pub/sub не годится для billing events, когда хватает Streams и что толкает к RabbitMQ или Kafka.

Типовые ошибки: Redis как единственный source of truth для финансовых событий; нет maxlen и исчерпание памяти; игнор lag consumer group; pub/sub для распределения работ без persistence.

Компромисс — гибкость против сложности: знайте, когда достаточно более простого пути.

Чеклист:

  • Подтвердите, что retention и durability укладываются в Redis.
  • Явно задайте maxlen и лимиты памяти.
  • Мониторьте длину stream и consumer lag.
  • План миграции при росте объёма.