home.social

#asyncprofiler — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #asyncprofiler, aggregated by home.social.

fetched live
  1. Приложение простояло 918 мс, а сборщик мусора отработал за одну: разбираемся, куда ушло остальное

    Секундная пауза в Java‑приложении легко выглядит как проблема сборщика мусора, хотя сам GC может отработать за миллисекунду. Разберём, как safepoint’ы заставляют JVM ждать отдельные потоки, почему профилировщик способен указать не туда и какими инструментами найти реального виновника.

    habr.com/ru/companies/otus/art

    #Java #JVM #точки_безопасности #safepoint #сборщик_мусора #паузы_JVM #профилирование_Java #asyncprofiler #JFR #производительность_приложений

  2. async‑profiler в production: CPU, аллокации, lock contention и чтение flame graph

    Профилирование Java‑приложений в production часто упирается не в отсутствие инструментов, а в их ограничения: CPU горит в одном месте, latency копится в другом, аллокации давят на GC, а lock contention вообще не виден в обычном CPU‑профиле. В статье разбираем, как использовать async‑profiler для диагностики реальных Java‑сервисов: снимать CPU, allocation, wall‑clock и lock‑профили, читать flame graph и понимать, где именно приложение тратит ресурсы.

    habr.com/ru/companies/otus/art

    #asyncprofiler #Java #JVM #профилирование #flame_graph #производительность #аллокации #многопоточность #lock_contention #latency

  3. Java нас обманывает: скрытая цена чистого кода

    Все сейчас пишут красивый, современный код: стримы, record DTO, функциональные цепочки. Применяют лучшие практики и никаких мутабельных аккумуляторов и ручных циклов. А потом код начинает виснуть. И ведь локально все хорошо, и памяти достаточно, но под нагрузкой GC внезапно начинает просыпаться каждые 200 миллисекунд, хотя куча заполнена всего на 40%. В это статье я приглашаю заглянуть под капот чистого кода и немного развеять иллюзию того что JVM все решит за Вас. Я не буду указывать правильный путь, а просто возьму два реальных стиля написания одного и того же кода, запущу их в трёх конфигурациях JVM и покажу, в какой момент чистый код внезапно оказывается дорогим удовольствием. Заглянуть

    habr.com/ru/articles/1036992/

    #java #jvm #производительность #gc #allocationrate #streams #функциональноепрограммирование #иммутабельность #бенчмарки #asyncprofiler