Библиотека джависта | Java, Spring, Maven, Hibernate
23.7K subscribers
2.11K photos
43 videos
43 files
2.97K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://t.iss.one/proglibrary/9197

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
Download Telegram
🆕 JEP 522 — Повышение производительности G1 GC через снижение синхронизации

🔵 Статус и контекст

— JEP 522, авторы — Ivan Walulya и Thomas Schatzl, нацелен на реализацию в JDK 26; последнее обновление датировано 8 сентября 2025 года.
— Согласно дорожной карте JDK 26, окончательное рассмотрение этого JEP запланировано на 15 сентября 2025 года.

🔵 Что меняется

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

— Ключевая идея — внедрение второй таблицы карточек (card table):

▪️ Потоки приложения работают с быстрой, простой, синхронно-нережимой "первой" таблицей
▪️ Потоки-оптимизаторы обрабатывают отдельную вторую таблицу
▪️ При необходимости G1 выполняет атомарный обмен таблицами, позволяя каждому потоку работать автономно и эффективно

🔵 Преимущества

— Производительность:

▪️ В сценариях с частыми изменениями ссылок в объектах — прирост производительности в диапазоне 5–15 %
▪️ Даже в менее интенсивных сценариях — прирост до 5 % за счёт упрощения write-барьеров (уменьшение с ~50 до ~12 инструкций на x64)

— Снижение пауз GC: более лёгкая структура таблиц карточек и менее громоздкая синхронизация сокращают продолжительность пауз сборщика мусора

— Дополнительная память:

▪️ Вторая таблица занимает ~0,2 % от кучи — порядка 2 МБ на каждый ГБ JVM-кучи
▪️ Несмотря на это, она заменяет более объёмные вспомогательные структуры и не увеличивает общий объём памяти заметно

🐸 Библиотека джависта

#News
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥41💯1
🆕 Java Digest: Java 25, кэширование и оптимизация Maven

Топ-3 статьи о Java за неделю по мнению нашего канала. Нововведения Java 25, паттерны кэширования для микросервисов и оптимизации сборки с помощью Maven.

1️⃣ PVS-Studio: Нововведения Java 25

PVS-Studio в своей статье подробно рассматривает нововведения в Java 25, включая новые API, улучшения синтаксиса и поддержку функционального программирования.

Cтоит отметить появление ScopedValue, который решает проблемы с ThreadLocal, а также возможность использования компактных исходных файлов и методов main.

2️⃣ OTUS: Пять производительных паттернов кэширования

В статье от OTUS рассматриваются пять основных паттернов кэширования, которые могут значительно повысить производительность микросервисов. Каждый паттерн, от Cache-Aside до Write-Back Cache, имеет свои особенности и сценарии применения.

3️⃣ Spring АйО: Maven — verify или clean install

Особенно рекомендую статью от Spring АйО. Всегда использовал mvn clean install, и, думаю, так делают многие из вас.

Статья посвящена вопросам оптимизации сборки проектов с использованием Maven. Также обсуждается, когда можно обойтись без clean install.

💬 Пишите, понравилась ли подборка?

🐸 Библиотека джависта

#News
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🎉2🔥1
📌 Как пользоваться тегами в канале

Чтобы вам было проще ориентироваться в постах, мы разделили весь контент по 4 основным направлениям:

🔹 #CoreJava — фундаментальные знания: JVM, JDK, ООП, многопоточность, паттерны и базовые концепции. Всё, что помогает понимать Java глубже, а не просто «писать код, чтобы работало».

🔹 #Enterprise — прикладные инструменты и практика: Spring, Hibernate, Kafka, Docker, микросервисы. Всё, что встречается в работе разработчика каждый день.

🔹 #DevLife — сообщество и карьера: мемы, холивары, задачи с собесов, советы по развитию и личные рубрики. Всё, что создаёт атмосферу и объединяет нас как комьюнити.

🔹 #News — дайджесты, свежие анонсы, релизы и новости. А также реклама и инфоповоды, которые стоит знать.

👉 Используйте теги, чтобы быстро находить посты по интересующей теме.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥3👏1
🚀 Релиз Java 25

Сегодня, 16 сентября 2025 года, вышла Java 25, новая версия с долгосрочной поддержкой (LTS). Выпуск включает 18 JEP'ов, среди которых как стабильные, так и экспериментальные и предварительные.

🔹 Полезные новшества:

— JEP 502: Stable Values. Введение нового типа для неизменяемых объектов с отложенной инициализацией.

— JEP 505: Structured Concurrency. Упрощение работы с многозадачностью.

— JEP 506: Scoped Values. Новый способ передачи неизменяемых данных между потоками.

— JEP 513: Flexible Constructor Bodies. Упрощение написания конструктора с кодом до вызова родительского конструктора.

🔹 Не очень важные:


— JEP 512: Compact Source Files. Убирает необходимость в public static void main(String[] args) — интересно только для скриптов и быстрых утилит.

— JEP 511: Module Import Declarations. Упрощение импорта классов и интерфейсов из модулей, хотя это и так на себя берёт IDE.

— JEP 470: PEM Encodings of Cryptographic Objects. Нужно для специфических криптографических нужд, но для большинства проектов — не критично.

— JEP 510: Key Derivation Function API. Обеспечивает работу с производными ключами, но для большинства приложений не станет приоритетом.

— JEP 521: Generational Shenandoah. Улучшения в сборщике мусора для специфических сценариев — для обычных проектов изменения не значительны.

🐸 Библиотека джависта

#News
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥31👏1
🆕 Java Digest: Spring Security, распределённый обмен событиями и трейсинг под нагрузкой

Топ-3 статьи о Java и сопутствующих технологиях за неделю по мнению нашего канала.

1️⃣ Spring Security для начинающих

Рекомендую хорошее читабельное введение в Spring Security.

Это не просто обзор API, а систематизированный конспект, где наглядно разобраны ключевые механизмы: фильтры, аутентификация, авторизация, отличие stateful/stateless сценариев, CSRF-защита и работа с JWT.

2️⃣ Обмен событиями распределённого приложения

Реализация системы сообщений между экземплярами сервисов через общую базу данных: секционированная таблица, блокировки, планирование партиций, минимальное использование внешних систем типа Kafka/JMS.

3️⃣ Трейсинг в hh.ru

Реальный кейс построения observability / tracing-системы при росте нагрузки. Здесь и сравнение стека (Zipkin, Jaeger, ClickHouse и др.), и как решать проблемы с семплированием без потери критичных данных.

💬 Пишите, понравилась ли подборка?

🐸 Библиотека джависта

#News
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍1🔥1
🚀 Java Rock Stars Meetup — 25 сентября, Москва

📍 Лофт Casa Picassa (м. Бауманская)
Начало в 17:30
💸 Бесплатно, нужна регистрация

Что в программе:


• Оптимизация вставки данных в PostgreSQL
• Новинки Java 25 под капотом
• Дискуссия о будущем Spring в России + секретный анонс
• Нетворкинг и розыгрыш мерча

👉 Детали и регистрация: habr.com

🐸 Библиотека джависта

#News
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2👏1
🆕 Java Digest: IDE, виртуальные потоки и OLAP-запросы

Топ-3 статьи о Java и смежных технологиях за неделю по версии нашего канала.

1️⃣ IDE для Java-разработчиков

Исследование по выбору IDE среди российских Java/Spring-разработчиков. Интересно посмотреть, как распределяются предпочтения между IntelliJ IDEA, VS Code и другими инструментами.

2️⃣ Подводные камни виртуальных потоков

Статья подробно разбирает, где виртуальные потоки Java могут подвести: от deadlock’ов и проблем с synchronized до нюансов работы с блокирующими API. Отличный разбор для тех, кто планирует использовать Project Loom в продакшене.

3️⃣ Оптимизация OLAP-запросов

Практика ускорения аналитических запросов: профилирование на уровне СУБД, Linux perf и eBPF-трассировка, методики Intel Top-down. Полезный материал для тех, кто работает с хранилищами данных и high-load аналитикой.

🐸 Библиотека джависта

#News
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42🔥1
🤫 Всё, что не пропустит ТГ можно найти на Х

Друзья, можно было бы послать вас на Х, но я просто предложу подписаться на наш профиль в Х.

Там можно найти много:

🖥 Интересных и полезных материалов
🤡 Смешных мемов
🔥 Горячих и полезных лайфхаков

🐸 Библиотека джависта

#News
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4🔥2👍1