Потребление оперативной памяти в языке Go: проблемы и пути решения

Подписывайтесь на наш канал здесь и в телеграмм
, чтобы быть в курсе будущих митапов и не пропускать полезные доклады! Виталий Исаев - МойОфис Рантайм языка Go содержит множество оптимизаций, увеличивающих эффективность работы с оперативной памятью, но ничего не знает об ограничениях, которые могут быть установлены для процесса операционной системой. Поэтому за каждой программой, написанной на Go, рано или поздно придёт OOM killer. Мы поговорим о возможностях, заложенных для решения этой проблемы авторами языка, и о том, чем ответило сообщество, проанализируем опыт крупных open-source проектов и сопоставим Go с другими современными языками программирования. #go #golang #meetup #evrone 00:00 - Введение 00:55 - Почему Go - хороший язык 01:16 - GitHub Go issues 02:19 - Так ли страшны утечки памяти в Go? 02:39 - Что делает ОС при исчерпании памяти 03:55 - Последствия аварийной остановки 04:15 - Сброс кешей 04:49 - Каскадные сбои 05:24 - Распределенные транзакции 06:38 - Мониторинг потребление памяти в Go 07:30 - Причины высокого потребления памяти в Go 07:54 - Ошибки бизнес-логики 13:47 - Управление памятью в Go 14:12 - Как организована работа с оперативной памятью в современных ОС 15:22 - Проблема фрагментации памяти 19:10 - Сборка мусора в Go 20:06 - GC Pacer 21:45 - Лимиты потребления памяти в Go 22:16 - Действия при приближению к лимиту памяти в Go 23:38 - Проект MemLimiter 25:27 - Трудный путь SetMemoryLimit 26:59 - Scavenger 29:20 - Итоги

Смотрите также