Разработка высоконагруженных игровых серверов.dor_БАК_25-239-Б

Разработка высоконагруженных игровых серверов.dor_БАК_25-239-Б — вариант 7

Просмотрите все вопросы и варианты бесплатно. Правильные ответы скрыты и открываются только после получения доступа.

11 вопросов Вариант 7 Доступ 7 дней
Содержание теста

Вопросы и варианты

Без отметок и подсказок к правильным ответам

Вопрос 1

Версионировать публичный API (Application programming interface) игрового бэкенда необходимо для того, чтобы … (выберите два варианта ответа)

  1. фронтенд/бэкенд не ломали клиентов независимыми релизами
  2. быстрее работать на уровне TCP (Transmission Control Protocol)
  3. иметь возможность параллельно поддерживать старые и новые контракты
  4. отключить аутентификацию
Вопрос 2

К функциям, которые можно возложить на API-шлюз (API Gateway) (Application programming interface), относится … (выберите три варианта ответа)

  1. маршрутизация запросов к сервисам по пути/заголовкам
  2. централизованная аутентификация/лимитирование
  3. репликация баз данных между регионами
  4. трансформация/агрегация ответов
Вопрос 3

Причиной внедрения асинхронного взаимодействия через очередь сообщений между сервисами может послужить …

  1. ускорение одного конкретного RPC (Remote Procedure Call)
  2. ослабление связности и сглаживание пиков (дефёрред-обработка)
  3. отказ от мониторинга
  4. замена маршрутизации на уровне L4
Вопрос 4

При «at-least-once» доставке событий в шине сообщений на стороне потребителя необходимо …

  1. выполнить идемпотентную обработку/ создать идемпотентные ключи
  2. повторять событие бесконечно без задержек
  3. отключить журналирование
  4. считать дубликаты маловероятными и игнорировать
Вопрос 5

Выпуск на малую долю трафика с мониторингом – это …-выкат

  1. сanary
  2. Canary
Вопрос 6

Полный переключатель между двумя средами– это …-деплой (укажите сочетание из двух слов на английском языке)

  1. blue-green
  2. Blue-green
Вопрос 7

Для снижения риска каскадных сбоев при межсервисных вызовах уместно … (выберите два варианта ответа)

  1. использовать таймауты + retries с экспоненциальным backoff
  2. использовать Circuit Breaker и деградация с фолбэком
  3. ждать ответы бесконечно
  4. увеличить лог-уровень до trace и не менять логику
Вопрос 8

Для наблюдаемости распределённой системы важно … (выберите два варианта ответа)

  1. использовать корреляционные/trace-ID, проходящие через все сервисы
  2. использовать только системные логи операционной системы
  3. использовать метрики и распределённую трассировку
  4. установить запрет алертинга, чтобы «не шумел»
Вопрос 9

Сопоставьте паттерн (механизм) с его описанием:

  1. Идемпотентный ключ (Idempotency Key)
  2. Outbox-паттерн
  3. Saga (оркестрация/хореография)
  4. Dead-letter Queue (DLQ)
  5. гарантирует, что повторно присланная команда не будет обработана дважды
  6. надёжная публикация событий из транзакций приложения через промежуточную таблицу/лог
  7. длинная бизнес-операция, разбитая на локальные транзакции с компенсациями
  8. очередь для сообщений, обработка которых постоянно падает, для последующего разбирательства
Вопрос 10

Расставьте в правильном порядке шаги canary-развёртывания сервиса с контролем метрик:

  1. развернуть новую версию параллельно и направить на неё малую долю трафика
  2. включить мониторинг SLI (Service Level Indicator) /алертов и наблюдать стабильность
  3. постепенно увеличить долю трафика при нормальных метриках
  4. переключить 100% трафика или откатить при деградации
Вопрос 11

Сервис «Профиль» периодически нестабилен: растут таймауты и ошибки, матчмейкинг начинает «зависать» из-за цепочек синхронных вызовов. Какое решение применить в первую очередь, чтобы сохранить отзывчивость и предотвратить каскадные отказы?

  1. Добавить таймауты и retries с экспоненциальным backoff+джиттер, обернуть вызовы через Circuit Breaker и ввести фолбэк (кэш/урезанный ответ)
  2. Увеличить таймауты до бесконечности, чтобы «дождаться» ответа
  3. Убрать все лимиты и логирование
  4. Увеличить уровень логирования до trace без изменения логики