C'est un événement asynchrone non bloquant. I/O construire par-dessus V8 .
Nous bénéficions donc de tous les gains de performance de V8, l'interpréteur JavaScript de Google. Comme la course aux performances de JavaScript n'est pas encore terminée, vous pouvez vous attendre à ce que Google mette constamment à jour les performances de V8 (gratuitement).
Nous avons des entrées/sorties non bloquantes, ce qui est tout simplement la bonne façon de faire des entrées/sorties. Elle est basée sur une boucle d'événements et l'utilisation de rappels asynchrones pour vos E/S.
Il vous donne des outils utiles comme la création d'un serveur HTTP, la création d'une TCP serveur, gérant les entrées/sorties de fichiers.
Il s'agit d'une plateforme de bas niveau très performante permettant d'effectuer n'importe quel type d'E/S sans avoir à écrire le tout en C à partir de zéro. Et elle évolue très bien grâce aux E/S non bloquantes.
Vous voulez donc utiliser Node.js si vous voulez écrire des applications hautement évolutives et efficaces en utilisant des E/S non bloquantes tout en disposant d'un langage de script de haut niveau. Si nécessaire, vous pouvez optimiser manuellement certaines parties de votre code en écrivant des extensions en C.
Il y a beaucoup de bibliothèques d'OS pour Node.js qui vous donneront des abstractions, comme Express.js et maintenant .
Vous ne voulez pas utiliser Node.js si vous voulez que des abstractions de haut niveau (lentes) fassent tout pour vous. Vous n'avez pas envie d'utiliser Node.js si vous voulez RAD . Vous ne voulez pas utiliser Node.js si vous ne pouvez pas vous permettre de faire confiance à une jeune plateforme, soit parce que vous devez écrire vous-même de gros morceaux de code pour faire des choses qui sont intégrées dans d'autres frameworks, soit parce que vous ne pouvez pas utiliser Node.js, parce que l'API n'est pas encore stable ou qu'il s'agit d'une version inférieure à 1.0.