Если вы слышали о node.js, вы, вероятно, знаете, что, в отличие от любых других технологий, Node.js — это среда выполнения для компиляции кода JavaScript в машинные инструкции. Это дает нам лучшую поддержку для выполнения операций ввода-вывода, балансировки нагрузки, а также приложений для потоковой передачи данных.

Чтобы научиться реализовывать приложение реального времени с помощью Node.js, вам необходимо понять несколько особенностей поведения node.js:

  1. Почему однопоточная архитектура лучше подходит для масштабируемости?
  2. Что такое асинхронный подход к реализации решения?
  3. Блокирующая и неблокирующая архитектура.
  4. Цикл событий.
  5. Пул потоков.
  6. Введение в некоторые важные основные модули.

1. Почему это называется одноядерной средой выполнения?

Приложение Node.js выполняется в одном процессе, без создания нового потока для каждого запроса. Node.js предоставляет набор примитивов асинхронного ввода-вывода в своей стандартной библиотеке, которые предотвращают блокировку кода JavaScript, и, как правило, библиотеки в Node.js написаны с использованием неблокирующих парадигм, что делает блокирующее поведение исключением. а не норм.

2. Что такое асинхронная функция?

Асинхронная функция — это функция, которая работает асинхронно через цикл обработки событий, используя неявное обещание для возврата результата. Но синтаксис и структура вашего кода, использующего асинхронные функции, гораздо больше похожи на использование стандартных синхронных функций.

(………Продолжение следует.)