tgoop.com/startpoint_dev/156
Last Update:
Что происходит при старте Node.js?
Когда мы запускаем node index.js, Node проходит несколько этапов:
1. Инициализация C++-окружения
Node настраивает V8 (движок JavaScript) и инициализирует libuv (который отвечает, в частности, за event loop). Также здесь парсятся аргументы командной строки (--inspect, --require и др.).
2. Передача управления JS-модулям
Далее Node загружает свои «системные» JS-модули — те, что реализуют, как работать с require и import, как находить зависимости, как всё это грузить. Он также создаёт JS-контекст: тут появляются global, process, console и прочие глобальные объекты и функции, которые всегда доступны.
3. Выполнение скрипта
Теперь Node готов исполнить index.js. Всё, что мы написали (включая синхронные импорты), выполняется сразу, до того, как event loop заработает.
4. Запуск Event Loop
Когда синхронная часть кода отработала, Node передаёт управление libuv: стартует event loop, который начинает обрабатывать таймеры, сетевые события и т.д.
#startpoint_dev_nodejs
BY Настя Котова // Frontend & Node.js
Share with your friend now:
tgoop.com/startpoint_dev/156
