J'ai remarqué que Node.js est devenu très populaire, et j'ai vu plusieurs cas de personnes y faire des projets à petite échelle.
J'ai également examiné les listes des avantages et des inconvénients pour avoir une idée de ce que Node.js peut faire, mais je ne sais toujours pas en quoi il diffère des autres technologies côté serveur plus matures comme PHP, Perl ou Ruby. Rails.
Qu'est-ce qui différencie spécifiquement Node.js des alternatives actuelles et pourquoi?
web-development
comparison
node.js
Saeed Neamati
la source
la source
Réponses:
Il y a deux choses importantes qui différencient Node.js des frameworks côté serveur existants, les événements asynchrones et l'utilisation de JavaScript comme langage de programmation.
Événements asynchrones
Alors que la plupart des infrastructures côté serveur existantes utilisent une architecture synchrone, Node.js utilise une architecture asynchrone , que JavaScript peut bien gérer. Cela signifie que le serveur réagit aux événements et envoie par exemple des événements (messages) à la base de données. Ce style de programmation est très différent d'un style synchrone et peut être difficile à utiliser avec d'autres langages. Node.js utilise un style asynchrone avec des E / S asynchrones et peut bien évoluer.
Voir aussi Architecture pilotée par les événements
Javascript
JavaScript est le langage de programmation utilisé par les applications Web sur le client. L'utilisation du même langage côté serveur signifie que le développeur peut appliquer ses connaissances JavaScript à la fois sur le client et sur le serveur, et utiliser les mêmes fonctions que nécessaire.
Je recommanderais la présentation Introduction à Node.js avec Ryan Dahl où il explique plus en détail l'architecture événementielle de Node.js.
la source
async
trucs, cela peut changer. Le problème n'est pas que vous ne pouvez pas écrire de code asynchrone évolutif dans d'autres langues, c'est qu'il est plus difficile de le faire (correctement) sans une bonne prise en charge du niveau de langue.Son diffrent parce que son événementiel . Cela rend le serveur hautement évolutif.
En un mot;
Modèle de fil
Modèle d'événement
la source
Session_Started
ouContext_Authenticated
ouPage_Load
?J'ai eu l'impression que sa popularité était due à l'utilisation de JavaScript. Étant donné que de nombreux développeurs Web connaissent JavaScript, c'est un argument de vente qu'ils peuvent désormais développer du code côté serveur en utilisant le même langage. Cela présente quelques avantages auxquels je peux penser:
la source