понедельник, 6 апреля 2020 г.

Диагностика в Golang

Экосистема Go предоставляет большой набор API и инструментов для диагностики проблем логики и производительности в программах Go.

Диагностические решения можно разделить на следующие группы:

  • Профилирование. Инструменты профилирования анализируют сложность и затраты программы Go, например использование памяти и часто вызываемые функции, для определения дорогих разделов программы Go.
  • Трассировка. Трассировка - это способ кодирования инструмента для анализа задержки в течение жизненного цикла вызова или запроса пользователя. Трассировки предоставляют обзор того, сколько задержек вносит каждый компонент в общую задержку в системе. Трассировки могут охватывать несколько процессов Go.
  • Отладка. Отладка позволяет нам приостановить выполнение программы Go и проверить ее выполнение. Состояние и ход программы можно проверить с помощью отладки.
  • Статистика и события во время выполнения. Сбор и анализ статистики и событий во время выполнения обеспечивает общий обзор состояния программ Go. Пики/спады показателей помогают нам определить изменения в пропускной способности, использовании и производительности.

Примечание. Некоторые средства диагностики могут мешать друг другу. Например, точное профилирование памяти искажает профили ЦП, а профилирование блокировки goroutine влияет на трассировку планировщика. Используйте инструменты отдельно, чтобы получить более точную информацию.


Читайте также:


Комментариев нет:

Отправить комментарий