Skip to main content
Практика завдань

Що таке Node.js і як він працює?

Що таке Node.js?

Node.js — це середовище виконання JavaScript на стороні сервера, побудоване на движку V8 JavaScript від Chrome. Воно дозволяє виконувати JavaScript поза браузером — на серверах, настільних комп'ютерах та в інструментах командного рядка.


Основні характеристики

ОсобливістьОпис
Середовище виконанняПобудоване на V8 (JS-движок Google Chrome)
Неблокуючий I/OОбробляє багато з'єднань без очікування
ОднопотоковеОдин основний потік + цикл подій
Подієво-орієнтованеЗворотні виклики/Promise реагують на події
КросплатформенеПрацює на Linux, macOS, Windows

Як працює Node.js

Ваш JS код Node.js APIs (fs, http, crypto…) libuv (бібліотека C++) ОС (файлова система, мережа, таймери…)
  1. V8 компілює ваш JavaScript у рідний машинний код
  2. libuv забезпечує цикл подій та асинхронний I/O через пул потоків
  3. Node.js Core APIs з'єднують JS та ОС

Простий приклад HTTP-сервера

js
const http = require('http'); const server = http.createServer((req, res) => { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('Привіт, Node.js!'); }); server.listen(3000, () => { console.log('Сервер працює на http://localhost:3000'); });

Чому Node.js?

  • Швидкий — V8 + неблокуючий I/O обробляє тисячі одночасних з'єднань
  • Уніфікована мова — JavaScript як на фронтенді, так і на бекенді
  • Велика екосистема — npm має понад 2 мільйони пакетів
  • Чудово підходить для реального часу — чати, сповіщення, потокове відео
  • Дружній до мікросервісів — легкий та швидкий у запуску

Коли НЕ використовувати Node.js

Node.js не є ідеальним для завдань, що вимагають інтенсивних обчислень (важкі обчислення, кодування відео, обробка зображень), оскільки працює на одному потоці. Для таких випадків розгляньте Go, Rust або використовуйте Worker Threads в Node.js.


Резюме

Node.js = середовище виконання JavaScript + движок V8 + цикл подій libuv + неблокуючий I/O. Він відмінно підходить для завдань, пов'язаних з I/O (API, додатки в реальному часі, мікросервіси) і є основою сучасної екосистеми бекенду JavaScript.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.

Дочитали статтю?
Практика завдань