Русскоязычное сообщество Spring-разработчиков.
Habr: bit.ly/433IK46
YouTube: bit.ly/4h3Ci0x
VK: bit.ly/4hF0OG8
Rutube: bit.ly/4b4UeX6
Яндекс Музыка: bit.ly/3EIizWy
Чат для общения: @spring_aio_chat
По вопросам сотрудничества: @befayer
Post #828
6.2K

⏱️ Байткод инструментация методов в Java: когда семплирования уже мало
Семплирующие профили не показывают реальное число вызовов и их длительность — а значит, мимо может пролетать важная боль. В новом переводе от команды Spring АйО на примерах показано, как включить инструментальную трассировку в async-profiler и что даёт новая фича latency: от ловли неожиданного
Разбираем накладные расходы, хитрости вроде interval, практичные кейсы (почему
Если вам нужны точные пути выполнения и реальная latency без убийства продакшена — это must-read.
📚 Читать на Хабр: https://habr.com/ru/companies/spring_aio/articles/952928/
Семплирующие профили не показывают реальное число вызовов и их длительность — а значит, мимо может пролетать важная боль. В новом переводе от команды Spring АйО на примерах показано, как включить инструментальную трассировку в async-profiler и что даёт новая фича latency: от ловли неожиданного
System.gc() и источников OutOfMemoryError до точного замера «долгих» вызовов с порогом и разбором в JMC через JFR-события. Разбираем накладные расходы, хитрости вроде interval, практичные кейсы (почему
ArrayList.contains и AbstractSet.removeAll могут внезапно стать O(N*M) и как это починить), а ещё сравниваем подход async-profiler с нововведениями в рамках JDK 25 (JEP 520), где последний имеет ряд недостатков.Если вам нужны точные пути выполнения и реальная latency без убийства продакшена — это must-read.
📚 Читать на Хабр: https://habr.com/ru/companies/spring_aio/articles/952928/
- 👍 21
- 🔥 6
- ❤ 5
- ⚡ 2






