Проект запущен в продакшн, сервера работают хорошо и эффективно. Проходит две недели и вдруг... сервер зависает при 100% утилизации CPU, памяти или того и другого. Или просто зависает. Что делать? Дебажить в продакшне нехорошо, а зачастую невозможно. Перезагрузить сервер? Вполне возможно поможет, но это временное решение. В большинстве подобных случаев, анализ «слепка памяти» и состояния процесса в дебаггере WinDBG поможет добратся то сути проблемы. В этом докладе я расскажу что за зверь такой эти «слепки памяти» или memory dumps, покажу демо основных способов анализа и обьясню когда стоит а когда не стоит использовать этот сложный, но весьма полезный вид дебаггинга.
Программер, гик и любитель почитать (в основном фантастику и фэнтези). В данный момент работаю в фирме Hibernating Rhinos, старший разработчик в Core Team базы данных RavenDB. Профессионально занимаюсь программированием уже 10 лет, в основном с разработческим стеком Майкрософт. Раньше работал в фирмах финансового направления, специализируясь на разработках серверных приложений.