Почему запрос стал медленным
Вопрос
Пользователи жалуются, что оформление заказа стало занимать 5 секунд. В системе 20 сервисов. Как будете искать причину?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Дашборды RED: какой эндпоинт и с какого момента, p99 а не среднее
Связь с событиями: деплой, изменение конфига, рост трафика
Распределённый трейс медленного запроса: какой span съел время
Метрики ресурсов USE у виновника: CPU, пул соединений, БД
Логи по trace id и затем исправление и алерт
Что могут спросить следом
- Как трейс передаётся между сервисами?
- Что если трейсинга нет?
Разбор
Начинаю с метрик: на дашборде сервиса заказов смотрю p99 по эндпоинтам и вижу, когда начался рост. Сверяю с событиями: деплой, смена конфига, всплеск трафика. Дальше беру несколько медленных запросов в трейсинге (OpenTelemetry и Jaeger): по спанам видно, что, например, 4,5 секунды уходит на вызов сервиса скидок. Иду в его метрики: может быть, исчерпан пул соединений к БД, и запросы ждут в очереди, или новый запрос без индекса. Логи по trace id подтверждают. После починки ставлю алерт на p99 этого эндпоинта и на сжигание error budget, чтобы узнавать раньше пользователей.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.