Горизонтальное и вертикальное масштабирование инференса и правильные метрики автоскейлинга.
Ключевые тезисы
- Скейлиться по длине очереди или задержке, а не по CPU: у GPU-сервиса загрузка CPU почти не меняется.
- Холодный старт при загрузке большой модели — десятки секунд; держите тёплый резерв.
- Шардирование по пользователям упрощает кеширование и локальность данных.
Подробный разбор
2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.
1По какой метрике масштабироваться
CPU здесь плохой сигнал.
- Длина очереди или время ожидания в ней — самый прямой индикатор нехватки мощности.
- p99 задержки — то, что реально волнует пользователя.
- Утилизация GPU — для GPU-сервисов вместо CPU.
- Комбинация: скейлить вверх агрессивно, вниз — осторожно, с большим окном.
2Холодный старт
Почему автоскейлинг не спасает от всплеска.
Поднять под, скачать образ, загрузить веса модели в память GPU — это от десятков секунд до нескольких минут. К моменту готовности новой реплики всплеск уже закончится.
- Держите тёплый резерв под ожидаемые пики.
- Прогревайте модель фиктивными запросами перед тем, как отдать под в балансировку (readiness probe).
- Храните веса в образе или на локальном диске узла, а не тяните их по сети при каждом старте.
Связанные темы
Инференс и эксплуатация
Requirements and SLA85%
Требования и SLA · Системный дизайн ML-сервисовЧисла, которые нужно зафиксировать до архитектуры: задержка, пропускная способность, доступность, стоимость запроса.
Serving Architecture85%
Архитектура инференса · Системный дизайн ML-сервисовМодель внутри приложения, отдельный сервис или платформа инференса — три уровня связанности.
Caching85%
Кеширование · Системный дизайн ML-сервисовНе считать то, что уже посчитано: кеш предсказаний, признаков и эмбеддингов.
Batching and Queues85%
Батчинг и очереди · Системный дизайн ML-сервисовСобирать запросы в пачки, чтобы загрузить GPU, и сглаживать всплески нагрузки очередью.
GPU Inference85%
GPU-инференс · Системный дизайн ML-сервисовКак выжать из видеокарты пропускную способность и не переплачивать.
Reliability85%
Отказоустойчивость · Системный дизайн ML-сервисовЧто происходит, когда модель недоступна, отвечает медленно или выдаёт мусор.
Observability85%
Наблюдаемость · Системный дизайн ML-сервисовЛоги, метрики и трассировки, по которым можно восстановить, что произошло с конкретным запросом.
Cost Model85%
Экономика сервиса · Системный дизайн ML-сервисовСтоимость одного предсказания и точка, где модель перестаёт окупаться.
LLM Serving85%
Обслуживание LLM · Системный дизайн ML-сервисовОтдельная инженерная дисциплина: KV-кеш, непрерывный батчинг, потоковая отдача и контроль стоимости.
Model Deployment85%
Деплой моделей · MLOpsДоставка модели пользователю: онлайн-сервис, батч-скоринг или встраивание в приложение.
Monitoring85%
Мониторинг · MLOpsНаблюдение за инфраструктурой, данными и качеством предсказаний после релиза.
Docker85%
Docker · MLOpsКонтейнеризация фиксирует окружение целиком: код, зависимости, системные библиотеки.
Kubernetes85%
Kubernetes · MLOpsОркестрация контейнеров: масштабирование, самовосстановление, обновления без простоя.