Цель данного доклада — показать, что производительность находится не только на уровне кода приложения. Существенная его часть находится именно на уровне инфраструктуры: виртуализации и контейнеризации.
Причем речь идет не о перфомансе отдельного метода, а о перфомансе приложения в целом.
В рамках доклада спикер расскажет о нескольких уровнях абстракции: виртуализацию, контейнеризацию и их влияние на производительность приложений.
Детальный план доклада:
- Физический уровень
- Core vs Threads (технология Hyper Threading)
- Режимы работы процессора CPUFreq Governors
- Гибридная технология Big.LITTLE
- Виртуализация
- Конвергентная и гиперконвергентая инфраструктура
- Технологии vMotion и DRS (Dynamic Resource Scheduling)
- Переподписка вычислительных ресурсов
- Почему виртуальная машина может тормозить и способы решения
- Проблематика работы планировщика для больших виртуальных машин
- Метрики производительности %WAIT, %RDY, %CSTP
- Контейнеризация
- Изоляция на уровне процессов
- Ресурсы доступные внутри контейнера
- Параметры reservation/limit для CPU и Memory
- Тротлинг ресурсов и 100% CPU со строны k8s
- Вертикальное и горизонтальное масштабирование приложений