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

Какие использовал способы передачи данных между микросервисами

В Python для передачи данных между микросервисами часто используют:

  1. HTTP/REST API (наиболее распространённый):
python
import requests
response = requests.get('http://service-b/api/data')
  1. gRPC (высокая производительность, бинарный протокол):
python
# Определение .proto файла и генерация кода
# Клиентский вызов
stub = service_pb2_grpc.ServiceStub(channel)
response = stub.GetData(request)
  1. Message Brokers (RabbitMQ, Kafka):
python
# RabbitMQ пример
channel.basic_publish(
    exchange='',
    routing_key='queue_name',
    body='message'
)
  1. GraphQL (гибкие запросы):
python
query = '''
{
  user(id: "1") {
    name
    email
  }
}
'''
response = requests.post('http://service/graphql', json={'query': query})
  1. WebSockets (real-time коммуникация)

Критерии выбора: требования к latency, throughput, согласованности данных, сложность реализации. Для синхронного взаимодействия - REST/gRPC, для асинхронного - брокеры сообщений.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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