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

В чем разница между Redis и RabbitMQ

Redis — это хранилище ключ-значение с возможностью публикации/подписки, часто используется для кеширования и быстрого доступа к данным. RabbitMQ — это брокер сообщений, предназначенный для асинхронной обработки задач и обмена сообщениями между сервисами.

Основные различия:

  • Redis: быстрый, хранит данные в памяти, поддерживает структуры данных (строки, списки, хеши). Подходит для кеширования, сессий, Pub/Sub.
  • RabbitMQ: реализует продвинутые паттерны обмена сообщениями (очереди, обменники, routing), гарантирует доставку, поддерживает подтверждения (ACK).

Пример Redis (Pub/Sub):

python
import redis
r = redis.Redis()
r.publish('channel', 'Hello!')

Пример RabbitMQ (очередь):

python
import pika
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
channel.queue_declare(queue='hello')
channel.basic_publish(exchange='', routing_key='hello', body='Hello!')

Когда что использовать:

  • Redis — если нужна скорость и простой Pub/Sub.
  • RabbitMQ — для сложных сценариев с гарантированной доставкой и обработкой очередей.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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