Java на диете: 45 МБ RAM и старт за 1.4 с. Смертный приговор классическим JVM?

Когда я впервые увидел, как мой сервис на Spring Boot с Postgres, MongoDB и Kafka «съел» всего 45 МБ оперативной памяти, я почувствовал азарт. Азарт инженера, который нашёл способ обмануть систему. Я был заряжен Axiom NIK: его эффективностью, его агрессивной компиляцией и тем, как он превращает «жирный» корпоративный стек в изящный бинарник. Многие годы нам вдалбивали: «Java — это прожорливо!». Нам говорили: «Выдели 2 ГБ под микросервис, иначе JIT не прогреется». Забудьте об этом! Я провёл R&D, который ставит точку в спорах о прожорливости Java! Это не просто тесты. Это вскрытие! Смотреть результаты вскрытия

https://habr.com/ru/articles/1004874/

#java #axiom_nik #graalvm #native_image #spring_boot_3 #project_loom #оптимизация

Java на диете: 45 МБ RAM и старт за 1.4 с. Смертный приговор классическим JVM?

JVM 427 МБ VS Native 49 МБ (-88%) Когда я впервые увидел, как мой сервис на Spring Boot с Postgres, MongoDB и Kafka “съел” всего 45 МБ оперативной памяти, я почувствовал азарт. Азарт инженера, который...

Хабр

Как подружить Spring Boot и Redis для эффективного кэширования

Когда проект вырастает из простых задач, каждый повторный запрос к базе данных превращается в бесполезную нагрузку на диски и процессор. И вместо того чтобы заставлять систему раз за разом искать, фильтровать и считывать одни и те же данные, логичнее отдавать их напрямую из оперативной памяти. В этой статье разберем, как эффективно внедрить слой кэширования на связке Redis + Spring Boot 3 / Java 21. Пробежимся по базовым командам Redis, реализуем cache‑aside вручную и через аннотации Spring Cache, а затем разберем два полезных паттерна для микросервисов: Fixed‑Window Rate Limiter и распределенный лок. Не пугайтесь сложных терминов, все понятным языком рассказал под катом.

https://habr.com/ru/companies/selectel/articles/992502/?utm_source=habrahabr&utm_medium=rss&utm_campaign=992502

#selectel #Redis #Spring_Boot_3 #Java_21 #кэширование #распределенный_лок #Spring_Cache #cache_aside #команды_redis

Как подружить Spring Boot и Redis для эффективного кэширования

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

Хабр

Как подружить Spring Boot и Redis для эффективного кэширования

Когда проект вырастает из простых задач, каждый повторный запрос к базе данных превращается в бесполезную нагрузку на диски и процессор. И вместо того чтобы заставлять систему раз за разом искать, фильтровать и считывать одни и те же данные, логичнее отдавать их напрямую из оперативной памяти. В этой статье разберем, как эффективно внедрить слой кэширования на связке Redis + Spring Boot 3 / Java 21. Пробежимся по базовым командам Redis, реализуем cache‑aside вручную и через аннотации Spring Cache, а затем разберем два полезных паттерна для микросервисов: Fixed‑Window Rate Limiter и распределенный лок. Не пугайтесь сложных терминов, все понятным языком рассказал под катом.

https://habr.com/ru/companies/selectel/articles/992502/

#selectel #Redis #Spring_Boot_3 #Java_21 #кэширование #распределенный_лок #Spring_Cache #cache_aside #команды_redis

Как подружить Spring Boot и Redis для эффективного кэширования

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

Хабр