Maison  >  Article  >  interface Web  >  Est-ce que nodejs doit être démarré à chaque fois ?

Est-ce que nodejs doit être démarré à chaque fois ?

PHPz
PHPzoriginal
2023-04-05 09:10:36766parcourir

Node.js est un environnement d'exécution JavaScript côté serveur très populaire, largement utilisé dans le développement Web, les outils de ligne de commande et d'autres domaines. Cependant, de nombreux débutants se posent une question lorsqu’ils apprennent Node.js : doivent-ils redémarrer à chaque fois qu’ils exécutent une application Node.js ?

La réponse n'est pas nécessairement. Répondons à cette question en détail ci-dessous.

Tout d’abord, examinons le fonctionnement de base de Node.js. Lors de l'écriture d'une application avec Node.js, nous créons généralement un fichier JavaScript, puis l'exécutons à l'aide de la commande node sur la ligne de commande. Par exemple, nous pouvons créer un fichier appelé app.js puis saisir :

node app.js

sur la ligne de commande. Cette commande démarrera l'environnement d'exécution Node.js et lui permettra d'exécuter notre application. L'application continuera à fonctionner jusqu'à ce que nous la terminions avec la commande Ctrl+C.

Donc, si on modifie le fichier app.js, faut-il redémarrer Node.js pour que la modification prenne effet ? La réponse n’est pas nécessairement. Si nous modifions certains paramètres ou données de configuration statiques et n'impliquons pas de modification de la logique du programme, nous pouvons alors utiliser certains outils pour effectuer des mises à jour à chaud sans redémarrer Node.js. Par exemple, vous pouvez utiliser l'outil nodemon pour surveiller les modifications de fichiers et redémarrer automatiquement les applications lorsque les fichiers sont modifiés. La méthode de fonctionnement spécifique est la suivante :

1. Tout d'abord, nous devons installer nodemon. Saisissez dans la ligne de commande :

npm install -g nodemon

2. Ensuite, dans le répertoire racine de notre application, créez un fichier de configuration appelé nodemon.json avec le contenu suivant :

{
  "watch": ["src"],
  "ext": "js json",
  "ignore": ["node_modules"],
  "execMap": {
    "js": "node --inspect=0.0.0.0:9229"
  }
}

Parmi eux, le champ watch précise le dossier à surveiller, le champ ext spécifie le suffixe du fichier à surveiller, le champ ignore spécifie le dossier à ignorer, le champ execMap spécifie la commande à exécuter, la commande node est spécifiée ici et le paramètre --inspect est ajouté pour activer Node. js fonction de débogage.

3. Enfin, entrez dans la ligne de commande :

nodemon app.js

Cette commande démarrera l'outil nodemon et lui permettra de surveiller notre application. Lorsque nous modifions un fichier, nodemon redémarrera automatiquement l'application.

Cependant, le plus souvent, ce que nous modifions est la logique du programme plutôt que les paramètres ou les données de configuration. Dans ce cas, il faut redémarrer Node.js pour que les modifications prennent effet. En effet, après avoir démarré Node.js, il compilera notre application en code machine et la chargera en mémoire pour l'exécuter. Si nous modifions la logique du programme, nous devons recompiler et charger le code machine pour que la nouvelle logique prenne effet.

En résumé, la nécessité de démarrer Node.js à chaque fois dépend de ce que nous modifions. Si nous modifions des paramètres ou des données de configuration statiques, nous pouvons utiliser des outils pour implémenter des mises à jour à chaud ; si nous modifions la logique du programme, nous devons redémarrer Node.js.

J'espère que cet article pourra répondre à vos questions et vous permettre de mieux comprendre le fonctionnement de Node.js.

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn