TGViewer
Библиотека девопса | DevOps, SRE, Sysadmin Библиотека девопса | DevOps, SRE, Sysadmin @devopsslib · 10.4K subscribers
Post #4784 1.18K
☕️ Java и лимиты

Запускаете Java-приложение и через час получаете звонок, что сервер лежит? Знакомо.

По умолчанию JVM берёт столько памяти и CPU, сколько захочет. На проде это боль. Разберёмся, как это починить.

Память

Два главных флага:

-Xms512m — сколько памяти выделить сразу при старте
-Xmx2g — максимум, выше которого heap не вырастет

java -Xms512m -Xmx2g -jar app.jar


Ставьте -Xmx всегда. Без него JVM может решить, что ей нужна половина RAM сервера и будет права по своей логике.

CPU / потоки

Ограничить количество потоков GC и компилятора:
-XX:ActiveProcessorCount=2


Особенно актуально в Docker/Kubernetes, ведь JVM видит все ядра хоста, а не контейнера. Без этого флага она создаст лишние потоки и будет драться за ресурсы.

Если запускаете в контейнере

Начиная с Java 11+ JVM умеет читать cgroup-лимиты контейнера автоматически. Но лучше явно включить:
-XX:+UseContainerSupport


И добавьте -Xmx через переменную окружения, чтобы удобно менять без пересборки:
JAVA_OPTS="-Xms256m -Xmx1g -XX:ActiveProcessorCount=2"
java $JAVA_OPTS -jar app.jar


📌 Итого: минимальный набор для продакшена
-Xms256m
-Xmx1g
-XX:ActiveProcessorCount=2
-XX:+UseContainerSupport


Дальше смотрите на метрики и подкручивайте под своё приложение.

➡️ Больше про Java без воды в канале. Подписывайтесь, там научат делать Java-Java

📍 Навигация: ВакансииЗадачиСобесы

🐸 Библиотека devops'a

#root_prompt
  • 👍 3
More from @devopsslib
  1. Sep 18, 2026От исходного кода до процессора: разберись, как работает программа 💻 Стартует практически…
  2. Sep 15, 2026😭 Как не потратить недельный лимит AI-кодинга за три дня? Разберём на вебинаре, как трати…
  3. Sep 15, 2026👩‍💻 Bash-скрипт для мониторинга сервисов Полноценный мониторинг вроде Zabbix или Prometh…
  4. Sep 13, 2026🌸 Вселенная намекает: пора уже начать этот курс С 14 сентября цены в Proglib Academy выра…
  5. Sep 13, 2026🤪 Если бы можно было задать один вопрос про AI в разработке — что бы вы спросили? Как выб…
  6. Sep 10, 2026Планы на 3 октября — прийти на RWB Infra x Security Meetup Мы направим прожекторы на инфра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →