Сжимаем ресурсы Java в контейнерах: 80% результата за 20% времени и без OOM

Эксплуатация систем

Java
Отказоустойчивость
Оптимизация производительности
Логирование и мониторинг
Управление конфигурацией
Нагрузочное тестирование
QA / другое
Управление инцидентами
Надёжность продакшена
Микросервисы
DevOps / Кубер
DevOps / SRE
Инфраструктура
Метрики
HR
Инструменты
Методологии

Доклад принят в программу конференции

Мнение Программного комитета о докладе

Отличный доклад, в котором расскажут, как правильно приготовить Java-приложение для работы в среде Kubernetes и при этом не обжечься. Будут советы, которые помогут значительно сэкономить денег на инфраструктуре за счет правильной оптимизации Java-машины и оптимального выбора requests/limits.

Целевая аудитория

SRE, DevOps, Системные администраторы, Инженеры сопровождения, Инженеры QA, Java разработчики

Тезисы

Расскажу, как мы держим «Пульс» не ниже 99,99 — обрабатываем ежедневную нагрузку автоматизированных HR-процессов более 3000rps, переживаем пики нагрузки при повседневной работе, по рассылкам об обучении или важной информации от руководства, либо High Season пользовательской активности в конце кварталов или года.

В докладе разберем подход к конфигурированию базового образа для запуска Java-приложений в контейнеризированной среде без изменений кодовой базы. На основе практических исследований выясним, как повысить утилизацию CPU, какой тип аллокатора выбрать, на что влияет выбор GC (пропускная способность, максимальная задержка, потребляемые ресурсы), как эффективно использовать всю доступную память, какие области необходимо ограничить, как защитить себя от прихода сверхпиковой нагрузки.

Общий стаж в IT более 12 лет. Начинал с позиции системного администратора, затем спустя 7 лет опыта переквалифицировался в DevOps. Последние три года эволюционировал в SRE-инженера. На текущем месте работы прорабатывает вопросы построения микросервисной архитектуры, занимается сопровождением команд разработки, решает сложные технические задачи при внедрении и эксплуатации приложений от стендов разработки до прода, выжимает максимум производительности из выделенных ресурсов.

Сбер

Сбер — это современный стек технологий, драйвовые проекты и команда единомышленников. У них около 3 000 продуктовых команд и огромное профессиональное IT-сообщество. Работают над созданием удобных онлайн-сервисов в самых разных сферах.

Видео