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

Какие знаешь типы гарантии доставки сообщений

В Python при работе с очередями сообщений (например, RabbitMQ, Kafka) есть несколько типов гарантий доставки:

  1. At-most-once – сообщение может быть потеряно, но не будет доставлено дважды. Пример:
python
channel.basic_publish(exchange='', routing_key='queue', body=message)
  1. At-least-once – сообщение гарантированно доставлено, но возможны дубли. Достигается подтверждением (ack):
python
channel.basic_consume(queue='queue', on_message_callback=callback, auto_ack=False)
  1. Exactly-once – сложная гарантия, требует идемпотентности или транзакций. В Kafka:
python
producer = KafkaProducer(acks='all', enable_idempotence=True)
  1. Transactional – доставка в рамках транзакции (например, база данных + очередь). RabbitMQ:
python
channel.tx_select()
channel.basic_publish(...)
channel.tx_commit()
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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