Event loop — сердце Node.js. Один поток обрабатывает тысячи соединений, пока каждый callback быстрый. Но стоит одному занять 200 мс — и весь сервер замирает. Разберём фазы цикла, разницу между micro-…
Настроить TypeScript-проект на Node.js в 2026 — задача на 15 минут, если знаешь правильные опции. Но выбор между ESM и CJS, tsx и ts-node, tsc и tsup может запутать. Разберём актуальный стек: ESM по…
JWT стал стандартом де-факто для аутентификации в SPA и микросервисах. Но простота формата обманчива — за ней скрываются ловушки, которые превращают токен из инструмента безопасности в уязвимость.…
Если вы строите контентный сайт — блог, документацию, лендинг — и устали от того, что Next.js тащит на клиент сотни килобайт JavaScript ради одной кнопки, пора посмотреть на Astro. Этот фреймворк по…
Common Table Expressions (CTE) — один из самых мощных инструментов PostgreSQL для сложных запросов. Но за удобством скрываются нюансы: материализация может убить производительность, рекурсия — уйти в…
Сервис работает неделю, потом начинает тормозить и падает с OOM. Знакомо? Утечки памяти в Node.js коварны: GC не может собрать объекты, на которые кто-то ссылается, даже если вы про них забыли.…
Фоновые задачи — неотъемлемая часть любого бэкенда: отправка email, обработка изображений, генерация отчётов. В Python-экосистеме два основных подхода: проверенный временем Celery и минималистичный…
Деплой новой версии — и часть пользователей получает 502. Kubernetes послал SIGTERM, а сервер оборвал соединения на полуслове. Graceful shutdown — обязательная часть production-ready сервиса:…
Мониторинг без алертинга — это просто красивые графики. Grafana Alerting превращает PromQL-запросы в автоматические оповещения нужной команде в нужный канал. Разбираем полный путь: от alert rule до…
Node.js — однопоточный. Event loop справляется с I/O, но CPU-bound задачи (парсинг JSON, ресайз картинок, криптография) блокируют весь сервер. Модуль worker_threads даёт настоящие потоки с…
В 2026 году axios всё ещё стоит в dependencies у миллионов проектов, хотя Node.js давно имеет встроенный HTTP-клиент. Начиная с Node 21 fetch() доступен без флагов, а под капотом работает undici —…
В Node.js есть встроенный механизм трассировки, о котором мало кто знает — diagnostics_channel. Он появился в Node 16 и позволяет подписываться на внутренние события рантайма без monkey-patching и…
Вы написали сервис, он работает в tmux на проде, и вы молитесь, чтобы никто не закрыл сессию. Знакомо? Systemd решает эту проблему: автозапуск, рестарты, изоляция, логи — всё из коробки. Нужен только…
В типичном монорепозитории с микросервисами CI-пайплайн содержит десятки команд docker build с разными аргументами, платформами и контекстами. Docker Buildx Bake решает эту проблему — один…
Вызов fs.readFile('data.csv') на файле в 10 GB — гарантированный OOM. Весь файл загружается в память целиком. Streams решают проблему: данные обрабатываются порциями (chunks), и в памяти одновременно…