В этой статье я расскажу, как профилировать и оптимизировать приложения на языке Go с использованием встроенных и общих инструментов, доступных в ОС Linux.
Что такое профайлинг и оптимизация? Если ваша программа работает недостаточно быстро, использует слишком много памяти, неоптимально использует процессор, вы хотите понять, в чем дело, и исправить — это и есть профайлинг и оптимизация.
Я привел такое определение, чтобы сразу отсечь вопросы некорректной работы приложения. В этой статье мы не будем говорить о проблемах мультитредового программирования, о дата-рейсах (англ. _data race_), о поиске ошибок (англ. _debugging_). Для всего этого в Go есть свои утилиты и подходы, но оставим эту тему на будущее.
![][1]
[Читать дальше →][2]
[1]:
https://habrastorage.org/files/cc7/3da/ec9/cc73daec92724c60954e0eebae8918a5.jpg
[2]:
https://habrahabr.ru/post/301990/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut