Иногда смотришь Lighthouse-отчёт и видишь frontend на 8 мегабайт. И это уже почти норма.
Особенно в проектах, где "на всякий случай" подключили ещё пару UI-kit, три библиотеки дат…
Читать далее →
Docker сильно упростил деплой. И одновременно сильно упростил создание чудовищных контейнеров по 2 гигабайта.
Очень часто открываешь Dockerfile — а там в образ уезжает вообще всё …
Читать далее →
Есть особый вид production-страданий — когда база данных "вроде работает", но CPU сервера постоянно живёт на грани нервного срыва.
Есть особый вид production-страданий — когда база данных "вроде работает", но CPU сервера постоянно живёт на грани нервного срыва.
И почти всегда выясняется, что проблема не в количестве данных, а в запросах.
SELECT * стал национальной традицией.
N+1 запросы появляются как по расписанию.
Индексы вспоминают уже после первых проблем.
Особенно хорошо это ощущается в ORM-проектах, где запросы постепенно начинают генерироваться слоями абстракции поверх слоёв абстракции.
А потом один endpoint внезапно делает 300 SQL-запросов.
Production backend довольно быстро учит уважать SQL и смотреть execution plan раньше, чем сервер начнёт задыхаться.
Микросервисы очень красиво выглядят на архитектурных схемах. Особенно пока их не нужно поддерживать.
Потому что реальность начинается позже:
сервис-дискавери, очереди, retry, dis…
Читать далее →
Есть фронтенд-проекты, где новый разработчик боится открыть папку components.
И обычно это очень плохой знак.
Потому что если UI-слой превращается в свалку shared-компонентов без…
Читать далее →