Обновить
4
Влад@VShulcz

Пользователь

3
Подписчики
Отправить сообщение

Как я ускорил dependency injection в Python в 130 раз: от рефлексии до компиляции графа

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели9.2K

«Контейнер для DI — это лишний оверхед, передай зависимость руками и не выдумывай». Я тоже так считал, пока не замерил: наивный контейнер резолвил типичный сервис-граф примерно в 200 раз медленнее ручной сборки.

Рассказываю, как тремя шагами — кэш плана, удаление проверки, которая всё равно не срабатывает, и компиляция графа в одну плоскую функцию — довёл резолв с 52.9 до 0.40 мкс/оп, почти как руками. И как при этом не дал exec-кодогенерации тихо собирать не те объекты в проде.

Приёмы переносимые: профилирование микрооверхеда, выкидывание мёртвой защиты, фаззинг на эквивалентность.

Читать разбор

Model Predictive Control для Kubernetes autoscaling: что получилось, где HPA оказался сильнее

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели7.5K

Я ожидал, что прогнозирующий контроллер обгонит HPA на коротком пике. Но в Kubernetes всё упёрлось не только в алгоритм: пик длился 30 секунд, а новые Pod становились Ready примерно через 40.

Почему Pod не успевают

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность