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