Поясніть event loop у Node.js. Які в нього фази?
Event loop по колу обробляє черги завершених операцій за фазами: таймери для setTimeout і setInterval, відкладені колбеки, poll для вхідного I/O, check для setImmediate і колбеки закриття. Між кожною фазою Node вичерпує чергу мікрозадач — спершу process.nextTick, потім колбеки промісів. Саме тому довга синхронна функція блокує всі запити на сервері: доки вона не поверне, не виконається нічого.