Введение После публикации рекордного количества статей о сравнении производительности различных технологий, таких как Node.js, Deno, Bun, Rust, Go, Spring, Python и т.д. для простого hello world case, я последовательно получал комментарии, что статьи были хороши, но не были применимы непосредственно для реальных случаев использования. Меня попросили сделать то же самое для более «реальных» дел. Статьи также (и до сих пор) привлекли рекордное количество просмотров. Тем не менее, точка зрения была принята хорошо...
Часть 1, Часть 2 Понимание проблемной области В кратком руководстве Clinic Doctor говорится что, если задержки Event Loop на уровне, который мы наблюдаем, весьма вероятно, что одна или несколько функций «блокируют» Event Loop. Работая с Node.js очень важно учитывать основную характеристику JavaScript: асинхронные события не могут произойти, пока в настоящее время не выполнен код. Вот почему setTimeoutне может быть точным. Например, попробуйте выполнить следующий код в DevTools браузера или в Node REPL: Результат измерений никогда не покажет 100мс...