News Grower

Независимое покрытие AI, стартапов и технологий.

[Перевод] Самый простой способ устроить утечку памяти в Java

В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java.Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока.Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличив...

Автор: spring_aio (Spring АйО) Оригинальный источник
[Перевод] Самый простой способ устроить утечку памяти в Java

В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java.Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока.Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличиваются, финал - java.lang.OutOfMemoryError: Java heap space.В целом вывод такой, что нужно смотреть график heap в VisualVM/JVisualVM/JConsole, снимать heap dump (jmap), в Eclipse MAT запускать Leak Suspects и проверять цепочки удерживающих ссылок.

Связанные теги

Компании и люди

Линия сюжета

Продолжить следить за темой

Переходите к связанным материалам, страницам сущностей и активным линиям сюжета.

Оптимизация пагинации и бесконечного скролла для поисковиков

Оптимизация пагинации и бесконечного скролла для поисковиков

Каталог на 50 000 товаров, а в индексе поисковиков – 3000. Знакомая картина? Чаще всего причина не в качестве контента, а в том, как реализована навигация по страницам категорий...

Как построить банк на 130 миллионов клиентов с помощью Clojure, иммутабельного графа и закона Конвея

Как построить банк на 130 миллионов клиентов с помощью Clojure, иммутабельного графа и закона Конвея

Я в качестве хобби последний год строю собственную платформу на Clojure и DataScript. Иногда об этом рассказываю коллегам и когда меня спрашивают, зачем банку функциональное про...

Обзор учебно-тренировочной электронной платы JZ-F407VET6

Обзор учебно-тренировочной электронной платы JZ-F407VET6

В этой заметке я произвел обзор учебно-треннировочной электронной платы JZ-F407VET6.Это простая и дешевая PCB часто выручает при прототипировании и отладке программных компонентов.

Мой фреймворк для агентной разработки с Claude Code

Год назад я проникся идеей вайбкодинга и начал разбираться, как бы организовать процесс так, чтобы на выходе получалось что-то полезное.В итоге собрал свой фреймворк агентной ра...

Как я автоматизировал управление информацией и оптимизировал рабочие процессы. История Sapiens OS

Как я автоматизировал управление информацией и оптимизировал рабочие процессы. История Sapiens OS

Если вы ведете несколько проектов одновременно, вы знаете проблему управления информацией. Мысль пришла в голову — записал куда-то. Через месяц пытаешься вспомнить: где это было...

[Перевод] Создаём брандмауэр при помощи eBPF и контрольных групп

[Перевод] Создаём брандмауэр при помощи eBPF и контрольных групп

Технология eBPF — интересная штука. С её помощью можно без труда внедрять в ядро Linux фрагменты кода, которые затем компилируются в коды операций (опкоды), которые гарантирован...

Рекламный слот

Встроенный блок в статье

Зарезервированный партнерский слот для релевантных инструментов, сервисов и аккуратных редакционных интеграций.

Партнерский слот

Похожие статьи

Еще материалы, которые пересекаются по тегам, источнику или категории.

Оптимизация пагинации и бесконечного скролла для поисковиков

Оптимизация пагинации и бесконечного скролла для поисковиков

Каталог на 50 000 товаров, а в индексе поисковиков – 3000. Знакомая картина? Чаще всего причина не в качестве контента, а в том, как реализована навигация по страницам категорий...

Как построить банк на 130 миллионов клиентов с помощью Clojure, иммутабельного графа и закона Конвея

Как построить банк на 130 миллионов клиентов с помощью Clojure, иммутабельного графа и закона Конвея

Я в качестве хобби последний год строю собственную платформу на Clojure и DataScript. Иногда об этом рассказываю коллегам и когда меня спрашивают, зачем банку функциональное про...

Обзор учебно-тренировочной электронной платы JZ-F407VET6

Обзор учебно-тренировочной электронной платы JZ-F407VET6

В этой заметке я произвел обзор учебно-треннировочной электронной платы JZ-F407VET6.Это простая и дешевая PCB часто выручает при прототипировании и отладке программных компонентов.

Мой фреймворк для агентной разработки с Claude Code

Год назад я проникся идеей вайбкодинга и начал разбираться, как бы организовать процесс так, чтобы на выходе получалось что-то полезное.В итоге собрал свой фреймворк агентной ра...

Еще материалы от Habr

Свежие публикации и продолжение темы от той же редакции.

Открыть страницу источника
Оптимизация пагинации и бесконечного скролла для поисковиков

Оптимизация пагинации и бесконечного скролла для поисковиков

Каталог на 50 000 товаров, а в индексе поисковиков – 3000. Знакомая картина? Чаще всего причина не в качестве контента, а в том, как реализована навигация по страницам категорий...

Как построить банк на 130 миллионов клиентов с помощью Clojure, иммутабельного графа и закона Конвея

Как построить банк на 130 миллионов клиентов с помощью Clojure, иммутабельного графа и закона Конвея

Я в качестве хобби последний год строю собственную платформу на Clojure и DataScript. Иногда об этом рассказываю коллегам и когда меня спрашивают, зачем банку функциональное про...

Обзор учебно-тренировочной электронной платы JZ-F407VET6

Обзор учебно-тренировочной электронной платы JZ-F407VET6

В этой заметке я произвел обзор учебно-треннировочной электронной платы JZ-F407VET6.Это простая и дешевая PCB часто выручает при прототипировании и отладке программных компонентов.

Мой фреймворк для агентной разработки с Claude Code

Год назад я проникся идеей вайбкодинга и начал разбираться, как бы организовать процесс так, чтобы на выходе получалось что-то полезное.В итоге собрал свой фреймворк агентной ра...

Дополнительное покрытие этой темы

Похожие публикации и близкие по смыслу материалы по этой же теме.

Семь вещей, которые нельзя делать из-за стирания типов в Java

Семь вещей, которые нельзя делать из-за стирания типов в Java

Мы, разработчики на Java, используем параметризованные типы каждый день: List, Map, Optional и так далее. Однако у параметризованных типов есть важная особенность: в Java они су...

[Перевод] Основные элементы экосистемы JavaScript по состоянию на 2026 год

[Перевод] Основные элементы экосистемы JavaScript по состоянию на 2026 год

Ранее мы писали похожие статьи о CSS, но JavaScript заслуживает не меньшего внимания! Тем более что JavaScript лучше справляется с версионированием. Мы рассмотрим новые возможно...

Я написал симулятор квантового поля на Java. Вот что из этого вышло

Я написал симулятор квантового поля на Java. Вот что из этого вышло

Одним вечером я решил проверить: что если взять решётку из 10 000 узлов, задать одно правило передачи энергии между соседями — и просто запустить? Никакой теоретической физики и...