strace для отладки: находим баги в проде за 5 минут
Выбор логгера в Node.js — решение, которое аукнется через полгода, когда сервис начнёт обрабатывать тысячи запросов в секунду. В 2026 году два главных кандидата — Pino и Winston. Оба поддерживают…
15 постов
Выбор логгера в Node.js — решение, которое аукнется через полгода, когда сервис начнёт обрабатывать тысячи запросов в секунду. В 2026 году два главных кандидата — Pino и Winston. Оба поддерживают…
Накатил приложение на сервер, написал systemd-юнит, делаешь systemctl start lenec.service, а в ответ:Job for lenec.service failed because the control process exited with error code. See "systemctl…
Гавриил Барсуков Запускаешь dev-сервер большого проекта, и через секунду в консоли:Error: ENOSPC: System limit for number of file watchers reached, watch '/path/to/project'Скажу честно: к самой ENOSPC (no space) это…
Зоя Хомякова Запускаешь npm run dev, а вместо знакомого ready on http://localhost:3000 получаешь:Error: listen EADDRINUSE: address already in use :::3000Порт 3000 уже кем-то занят. Чаще всего это твой же…
Камилла Куницына Команда Flipper Devices наконец раскрыла карты: Flipper One — это не апгрейд Flipper Zero, а совершенно другой проект. Если Zero работает с офлайн-протоколами (NFC, RFID, Sub-1 GHz, IR), то One — это…
Дефолтный nginx обрабатывает тысячи RPS. Но когда трафик растёт, дефолты мешают: соединения к upstream пересоздаются на каждый запрос, буферы маленькие, сжатие отключено. Разберём параметры, которые…
В 2026 году спор «Zustand или Redux Toolkit» — это уже не холивар фанатов, а практический выбор архитектуры. Оба инструмента зрелые, оба поддерживают TypeScript из коробки. Но подходят они для разных…
Текстовые логи вида INFO: User logged in работают, пока сервис маленький. Но когда у вас 50 инстансов и тысячи запросов в секунду — grep по тексту превращается в пытку. structlog решает проблему:…
Если вы пришли в Rust из Python, borrow checker — первая стена. В Python память управляется GC, и вы не думаете о владении. В Rust ownership — центральная концепция, гарантирующая безопасность памяти…
SSH-соединение оборвалось — и ваш долгий процесс умер вместе с терминалом. Знакомо? tmux решает эту проблему раз и навсегда: сессии живут на сервере независимо от подключения. Но tmux — это не только…
Linux долго жил с двумя подходами к асинхронному I/O: epoll для сокетов и POSIX aio для файлов. Оба имеют фундаментальные ограничения. io_uring, появившийся в ядре 5.1 (2019), решает их через единый…
Astro — фреймворк, который отправляет браузеру чистый HTML и ноль JavaScript по умолчанию. Интерактивные компоненты подключаются точечно — как «острова» в море статики. Это делает Astro идеальным для…
WireGuard — самый быстрый и простой VPN, на который я нормально пересел в 2021-м, и с тех пор не возвращался. Конфиги короче, чем у OpenVPN, скорость лучше, отладка проще. Расскажу, как у меня…
Ярослав Медведев Fail2ban — простой и надёжный инструмент против перебора паролей. Я ставлю его на каждый VPS первым же шагом после базовой настройки. На Ubuntu 24.04 он работает без сюрпризов, но есть нюансы…
Эльвира Соболева