Встречается на собеседованиях • сегодня
Как работает асинхронный способ взаимодействия между микросервисами
Асинхронное взаимодействие между микросервисами обычно реализуется через брокеры сообщений (RabbitMQ, Kafka) или event-driven архитектуру. Вместо прямых HTTP-запросов, сервисы обмениваются событиями через очередь, что повышает отказоустойчивость и масштабируемость.
Пример с RabbitMQ и Python (библиотека pika):
python
# Producer
import pika
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
channel.queue_declare(queue='orders')
channel.basic_publish(exchange='', routing_key='orders', body='New order created')
connection.close()
Consumer
def callback(ch, method, properties, body):
print(f"Received: {body}")
channel.basic_consume(queue='orders', on_message_callback=callback, auto_ack=True)
channel.start_consuming()
text
Ключевые преимущества:
- Слабая связанность сервисов
- Возможность обработки сообщений в своем темпе
- Устойчивость к временным отказам
- Поддержка горизонтального масштабирования
Недостатки:
- Усложнение мониторинга
- Необходимость обработки дублей и порядка сообщений
- Дополнительная инфраструктура (брокер)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы