Перейти к содержимому

Микросервисы и распределённые системы

Вопросов: 53 из 32 собеседований. Источник указан в заголовке группы.

  • Что такое ключи идемпотентности?
  • Как в распределенной системе с чистой архитектурой обеспечить атомарность операции, затрагивающей несколько сервисов? Какие паттерны распределенных транзакций использовали для гарантии согласованности?
  • Что такое идемпотентность в запросах к сервисам?
  • Вопросы по поиску проблемы в распределенной системе;
  • Что такое микросервисы и монолиты? Их преимущества и недостатки, когда стоит использовать микросервисы а когда - монолиты?
  • что такое сервис меш
  • какие паттерны микросервисов знаешь?
  • Представьте, что у вас есть настроенный дашборд в Grafana для микросервиса. Активных алертов нет, инциденты не зафиксированы, но вам нужно провести плановую проверку состояния сервиса. Как вы определите, что сервис действительно работает стабильно и нет скрытых проблем?
  • Представьте, что вы наблюдаете за работой микросервиса и замечаете периодические «волны» в его поведении. Как можно обнаружить эти волны и что вы предпримете?
  • У вас есть микросервис, работающий с PostgreSQL, и вам нужно изменить схему: добавить колонку или таблицу. Как вы это реализуете?
  • Есть микросервис, развернутый в Kubernetes с несколькими репликами за балансировщиком нагрузки. Внешняя система отправляет вебхук для обновления данных. Поскольку балансировщик направляет запрос только на одну случайную реплику, как обеспечить актуальность данных на всех экземплярах сервиса? Как организовать синхронизацию между репликами, чтобы минимизировать рассогласование?
  • Расскажите о масштабировании в распределенных системах. Какие есть виды масштабирования?
  • Работал ли с микросервисами и монолитом? В чем основное отличие микросервисной архитектуры и монолитной?
  • Расскажи как у вас общались микросервисы между собой?
  • Какие плюсы и минусы микросервисной архитектуры?
  • Расскажите, что знаете про распределенные транзакции.
  • Какой есть другой способ взаимодействия микросервисов кроме оркестрации?
  • Какие плюсы и минусы у монолита?
  • Какие плюсы и минусы у микросервисов?
  • Удавалось ли реализовывать exactly once на уровне микросервисов? Какие паттерны использовали? Какие еще можно предложить способы реализации?
  • Что такое паттерн Outbox?
  • Допустим, приходит тимлид и говорит: «Нужна такая фича», но я понимаю, что для нее нужен новый микросервис, новое взаимодействие между микросервисами или новая технология. Что делали?

У компании есть распределенное «облако», состоящее из множества физических серверов, сгруппированных в N (N > 3) разных дата-центров (ЦОД). На этих серверах развертываются кластеры баз данных (Scylla/Cassandra) по следующим правилам:

  • Что такое идемпотентность и как ее реализовать?
  • В чем преимущества и недостатки микросервисного подхода?
  • Почему микросервисный подход усложняет отладку транзакций?
  • Как организуешь микросервис, который делает долгие вычисления;
  • Микросервис перевода денег на счет мобильного оператора.
  • Какие можете назвать преимущества и недостатки микросервисной архитектуры?
  • Что можете рассказать о реализации распределенных транзакций?
  • Как вы определяли границы сервисов при переходе на микросервисы?
  • Как технически проверяется подпись и защита JWT между микросервисами?
  • Настраивали ли вы Nginx как Reverse Proxy или API Gateway?
  • Объясните паттерны Inbox и Outbox. Для решения каких проблем они предназначены? Как они помогают обеспечивать согласованность данных в распределенных системах?
  • Как трейсил микросервисы?
  • Как организовать работу трех сервисов с одной базой данных без конфликтов? Какие стратегии и паттерны для этого существуют?
  • Какие паттерны микросервисной архитектуры вы знаете? Можете привести примеры?
  • В чем недостатки микросервисной архитектуры по сравнению с монолитами?
  • Что такое идемпотентность в REST? Какие рестовые методы идемпотентны a какие нет?
  • Как деплоились микросервисы?
  • Как вы отслеживаете распределенную трассировку запросов через несколько сервисов?
  • В чем разница между монолитом и микросервисами?
  • Что такое идемпотентность в REST?
  • Что использовал для межсервисного взаимодействия? (grpc/rest)
  • Какие тулзы использовал для построения микросервисной архитектуры?
  • В чем плюсы и минусы микросервисов?
  • Что такое микросервисная архитектура?
  • Назовите недостатки микросервисной архитектуры.
  • Что такое идемпотентность?
  • С какими способами взаимодействия между сервисами вы сталкивались?
  • Как можем построить распределенную транзакцию в рамках сервиса с распределенным вычислением?
  • Как сделать двухфазный коммит?
  • Что такое паттерн сага?