Maison  >  Article  >  interface Web  >  Quel est le but d’apprendre Nodejs ?

Quel est le but d’apprendre Nodejs ?

藏色散人
藏色散人avant
2022-08-08 10:50:092174parcourir
Les connaissances front-end sont mises à jour très rapidement. Beaucoup de gens ont des questions. Il semble que je n'utilise pas du tout Node en développement, alors pourquoi ai-je encore besoin de l'apprendre ?

En fait, cela ne signifie pas que vous devez apprendre le nœud, mais pour un meilleur développement sur le lieu de travail, notamment pour apprendre une réflexion en programmation plus avancée, il est nécessaire d'apprendre le nœud.

Ce qui suit est une explication détaillée de la nécessité d'apprendre node[Recommandation : Tutoriel vidéo node.js]

1 La capacité la plus fondamentale de node.js est de permettre à js de s'exécuter sans le navigateur If. vous apprenez bien le nœud, vous pouvez. Je ne suis plus un "pur front-end"
2 L'apprentissage de nodejs est la base de l'ingénierie front-end (NodeJS Stream)
3. Apprenez bien le nœud, vous pouvez écrire des API côté serveur, et mettre en œuvre des projets de développement indépendants
4. En tant que couche intermédiaire (question étendue) : Qu'est-ce que la couche intermédiaire ? )

La couche intermédiaire (BFF) est également appelée couche application. Elle se situe entre la couche de service (Java) et la couche intermédiaire. client dans l'architecture. Son rôle principal est :

  • Recevoir les demandes des clients
  • Render la page HTML
  • Bigpipe, Comet, Socket
  • Demande d'interface de fusion
  • Personnalisation de l'itinéraire
  • Mise en cache des données

Maintenant, pourquoi disons-nous que souvent le front-end doit également écrire sa propre API ?

1. Structure classique à deux niveaux : front-end + serveur
2. Structure à trois niveaux : front-end + back-end + serveur (la structure utilisée dans les projets moyens et grands actuels)
Le serveur des trois. La structure à plusieurs niveaux est uniquement responsable des opérations. La base de données gère les données
et renvoie les données au back-end. Il s'agit essentiellement de données pures et n'inclut pas les services de données. Le back-end est ce qu'on appelle la couche intermédiaire. -end est développé, nodejs est préféré en raison du coût d'apprentissage le plus bas pour le front-end.

Si votre poste professionnel est d'être un pur front-end toute une vie, alors vous n'avez pas besoin d'apprendre nodejs. Cependant, en fait, il est difficile d'être un pur front-end toute une vie. À l'âge de 35 ans, votre capacité n'est que de « déplacer des briques », donc sur le lieu de travail, la valeur sera de plus en plus faible.

CTO est souvent servi par des ingénieurs côté serveur

Raison :

1 Nécessité de concevoir l'architecture technique de l'ensemble de l'entreprise

2 Nécessité de considérer le problème dans une perspective globale
3. l'atout le plus important : les données (qui contrôle les données, qui a le droit de parler)

Le nœud d'apprentissage ne signifie pas que vous pouvez être CTO, mais au moins cela peut grandement améliorer notre statut de lieu de travail front-end.

Techniquement parlant, c'est une chose très enrichissante d'utiliser ses propres capacités pour mener à bien un projet ou un produit de manière indépendante.

Même si toutes les raisons précédentes sont éliminées, en tant que pur front-end, le nœud d'apprentissage présente de grands avantages. Il peut cultiver notre réflexion en matière de programmation et élargir notre perspective sur la réflexion sur les problèmes.

Les avantages, les inconvénients et les scénarios applicables de NodeJs

Deux fonctionnalités majeures de NodeJs : les E/S non bloquantes basées sur les événements

Donc les deux plus grands avantages de NodeJs
1 Gérer une concurrence élevée, par rapport aux autres. -end langages, chaque connexion émet un événement (Event) exécuté dans le processus du moteur NodeJS et le place dans la file d'attente des événements, au lieu de générer un nouveau thread de système d'exploitation pour chaque connexion (et de lui allouer de la mémoire de support)
2 .I/ Applications gourmandes en O

En raison de la nature monothread de JavaScript, NodeJs n'est pas adapté aux applications gourmandes en CPU. Les principaux défis que les applications gourmandes en CPU apportent à Node sont : en raison de la nature monothread de JavaScript, si. il y a des calculs de longue durée (tels que de grandes boucles) qui empêcheront la tranche de temps CPU d'être libérée, rendant les E/S ultérieures impossibles à lancer

Solution : Décomposer les grandes tâches informatiques en plusieurs petites tâches afin que le calcul peut être publié en temps opportun sans bloquer les appels d'E/S Initiation ;

Scénarios applicables pour NodeJs :

  • API RESTful

    C'est le scénario d'application le plus idéal pour NodeJS. Il peut gérer des dizaines de milliers de connexions. Il n'a pas beaucoup de logique en soi. Il suffit de demander l'API et d'organiser les données. Il recherche essentiellement certaines valeurs dans une base de données et les compose en réponse. Étant donné que les réponses sont de petites quantités de texte et que les requêtes entrantes sont de petites quantités de texte, le trafic n'est pas élevé et une seule machine peut gérer les besoins en API même des entreprises les plus occupées.

  • Unifiez la couche d'interface utilisateur des applications Web

    L'architecture MVC actuelle, dans un sens, le développement Web a deux couches d'interface utilisateur, l'une est ce que nous voyons finalement dans le navigateur, et l'autre est côté serveur et est responsable de Générez et assemblez des pages.

  • Applications avec un grand nombre de requêtes Ajax

    Par exemple, les applications personnalisées, chaque utilisateur voit une page différente, le cache n'est pas valide et les requêtes Ajax doivent être lancées lorsque la page est chargée peut répondre à un. un grand nombre de requêtes simultanées
    En bref, NodeJS convient à une utilisation dans des scénarios avec une concurrence élevée, des E/S intensives et une petite quantité de logique métier

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer