По порядку Middle Производительность и профилирование обновлено
Методика поиска узкого места
Вопрос
Расставьте шаги поиска причины роста p99 у сервиса.
Попробуйте сами
Расставьте шаги по порядку стрелками.
- 1Сопоставить с изменениями: релиз, трафик, данные, зависимости
- 2Проверить ресурсы и насыщение: CPU и троттлинг, память, пулы, диски
- 3Снять профиль, если время уходит внутри сервиса
- 4Уточнить симптом: какие запросы, с какого времени, насколько хуже
- 5Выдвинуть гипотезу, изменить одно и измерить снова
- 6Посмотреть трейсы медленных запросов: где тратится время
Показать ответ и разбор
Коротко
Движение от симптома к причине, от широкого к узкому. Профилировщик полезен, когда уже понятно, что время тратится внутри сервиса, а не на ожидание зависимостей.
Правильный порядок
- 1Уточнить симптом: какие запросы, с какого времени, насколько хуже
- 2Сопоставить с изменениями: релиз, трафик, данные, зависимости
- 3Посмотреть трейсы медленных запросов: где тратится время
- 4Проверить ресурсы и насыщение: CPU и троттлинг, память, пулы, диски
- 5Снять профиль, если время уходит внутри сервиса
- 6Выдвинуть гипотезу, изменить одно и измерить снова
Разбор
Движение от симптома к причине, от широкого к узкому. Профилировщик полезен, когда уже понятно, что время тратится внутри сервиса, а не на ожидание зависимостей. Каждое изменение проверяется измерением, иначе легко «починить» не то.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.