Maison Opération et maintenance Nginx NGINX et PM2 : Améliorez les performances et la stabilité des serveurs VPS

NGINX et PM2 : Améliorez les performances et la stabilité des serveurs VPS

Sep 28, 2023 pm 04:00 PM
nginx 性能 pm

NGINX和PM2: 提升VPS服务器的性能和稳定性

NGINX et PM2 : Pour améliorer les performances et la stabilité du serveur VPS, des exemples de code spécifiques sont nécessaires

Introduction :
À l'ère d'Internet moderne, les performances et la stabilité du serveur sont cruciales pour le fonctionnement normal du site Web. Lors du traitement d'un nombre élevé de requêtes simultanées, les performances et la stabilité du serveur affectent directement l'expérience utilisateur. Afin d'améliorer les performances et la stabilité du serveur, NGINX et PM2 sont deux outils très utiles. NGINX est un serveur Web et un serveur proxy inverse hautes performances, et PM2 est un outil de gestion de processus. Cet article expliquera comment utiliser NGINX et PM2 pour améliorer les performances et la stabilité du serveur VPS, et donnera quelques exemples de code spécifiques.

1. Installer et configurer NGINX

  1. Installer NGINX
    Installer NGINX sur un serveur VPS est très simple. Commencez par mettre à jour la liste des packages du serveur, puis utilisez la commande apt-get pour installer NGINX.
sudo apt-get update
sudo apt-get install nginx
Copier après la connexion
  1. Configuration de NGINX
    Une fois l'installation terminée, vous devez effectuer une configuration de base sur NGINX. Cela comprend principalement la modification du fichier de configuration par défaut de NGINX et la création d'un fichier de configuration d'hôte virtuel.
  • Modifier le fichier de configuration par défaut
    Le fichier de configuration par défaut se trouve dans /etc/nginx/nginx.conf. Peut être ouvert et modifié à l’aide de n’importe quel éditeur de texte. En fonction de la configuration matérielle du serveur, certains paramètres, tels que Worker_processes et Worker_connections, peuvent être modifiés pour optimiser les performances de NGINX. /etc/nginx/nginx.conf。可以使用任何文本编辑器打开并修改。根据服务器硬件的配置,可以修改一些参数,如worker_processes和worker_connections等,以优化NGINX性能。
  • 创建虚拟主机配置文件
    虚拟主机配置文件位于/etc/nginx/sites-available/
  • Créer un fichier de configuration d'hôte virtuel
Le fichier de configuration d'hôte virtuel se trouve dans le répertoire /etc/nginx/sites-available/. Un nouveau fichier de configuration peut être créé pour créer un hôte virtuel indépendant pour chaque site Web. Voici un exemple de fichier de configuration d'hôte virtuel :

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}
Copier après la connexion
Copier après la connexion
    L'exemple ci-dessus configure un serveur proxy inverse de base pour transférer les requêtes de example.com vers le port local 3000.

  1. Démarrez NGINX et vérifiez la configuration
Après avoir terminé la configuration, vous devez démarrer NGINX et utiliser un navigateur pour vérifier si la configuration prend effet.

sudo service nginx start
Copier après la connexion

Ouvrez le navigateur et accédez au nom de domaine ou à l'adresse IP configurés. Si tout est normal, vous verrez la page d'accueil par défaut de NGINX.

    2. Installez et configurez PM2

  1. Installation de PM2
Il est très simple d'installer PM2 globalement à l'aide de npm.
  1. sudo npm install -g pm2
    Copier après la connexion

  2. Lancez et gérez des applications
Il est très pratique de lancer et de gérer des applications avec PM2. Dans le répertoire racine du projet, utilisez la commande suivante pour démarrer l'application :

pm2 start app.js
Copier après la connexion
Copier après la connexion
    Vous pouvez également utiliser la commande suivante pour effectuer d'autres opérations sur l'application :
Afficher la liste des applications
  • pm2 list
    Copier après la connexion
Arrêtez le application
  • pm2 stop app
    Copier après la connexion
Redémarrez l'application

pm2 restart app
Copier après la connexion
    3. Utilisation combinée de NGINX et PM2

  1. Configurer le proxy inverse NGINX
Dans le fichier de configuration de l'hôte virtuel de NGINX, transférez la requête HTTP à l'application exécutée sur PM2.
  1. server {
        listen 80;
        server_name example.com;
    
        location / {
            proxy_pass http://localhost:3000;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
    }
    Copier après la connexion
    Copier après la connexion

  2. Utilisez PM2 pour gérer les applications
Dans le répertoire racine du projet, démarrez l'application à l'aide de PM2.

pm2 start app.js
Copier après la connexion
Copier après la connexion
    Ce qui précède démarrera une application Node.js en écoute sur le port 3000.

  1. Test et vérification
Avec la configuration et le démarrage ci-dessus, les requêtes HTTP reçues par NGINX seront transmises à l'application exécutée sur PM2. Ouvrez le navigateur et visitez le nom de domaine ou l'adresse IP configurée. Si tout est normal, vous verrez la page de l'application.


Conclusion :

En combinant NGINX et PM2, nous pouvons améliorer les performances et la stabilité du serveur VPS. L'utilisation de NGINX comme serveur proxy inverse peut améliorer les capacités de traitement des requêtes simultanées, et l'utilisation de PM2 peut facilement gérer le démarrage et la surveillance des applications. J'espère que les exemples de code de cet article seront utiles aux lecteurs qui utilisent NGINX et PM2 pour améliorer les performances et la stabilité du serveur.

🎜Nombre total de mots : 634 mots🎜

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comparaison des performances de différents frameworks Java Comparaison des performances de différents frameworks Java Jun 05, 2024 pm 07:14 PM

Comparaison des performances de différents frameworks Java : Traitement des requêtes API REST : Vert.x est le meilleur, avec un taux de requêtes de 2 fois SpringBoot et 3 fois Dropwizard. Requête de base de données : HibernateORM de SpringBoot est meilleur que l'ORM de Vert.x et Dropwizard. Opérations de mise en cache : le client Hazelcast de Vert.x est supérieur aux mécanismes de mise en cache de SpringBoot et Dropwizard. Cadre approprié : choisissez en fonction des exigences de l'application. Vert.x convient aux services Web hautes performances, SpringBoot convient aux applications gourmandes en données et Dropwizard convient à l'architecture de microservices.

Inversion des valeurs clés du tableau PHP : analyse comparative des performances de différentes méthodes Inversion des valeurs clés du tableau PHP : analyse comparative des performances de différentes méthodes May 03, 2024 pm 09:03 PM

La comparaison des performances des méthodes de retournement des valeurs de clé de tableau PHP montre que la fonction array_flip() fonctionne mieux que la boucle for dans les grands tableaux (plus d'un million d'éléments) et prend moins de temps. La méthode de la boucle for consistant à retourner manuellement les valeurs clés prend un temps relativement long.

Comment optimiser les performances des programmes multi-thread en C++ ? Comment optimiser les performances des programmes multi-thread en C++ ? Jun 05, 2024 pm 02:04 PM

Les techniques efficaces pour optimiser les performances multithread C++ incluent la limitation du nombre de threads pour éviter les conflits de ressources. Utilisez des verrous mutex légers pour réduire les conflits. Optimisez la portée du verrou et minimisez le temps d’attente. Utilisez des structures de données sans verrouillage pour améliorer la simultanéité. Évitez les attentes occupées et informez les threads de la disponibilité des ressources via des événements.

Comment déployer et maintenir un site Web en utilisant PHP Comment déployer et maintenir un site Web en utilisant PHP May 03, 2024 am 08:54 AM

Pour déployer et maintenir avec succès un site Web PHP, vous devez effectuer les étapes suivantes : Sélectionnez un serveur Web (tel qu'Apache ou Nginx) Installez PHP Créez une base de données et connectez PHP Téléchargez le code sur le serveur Configurez le nom de domaine et la maintenance du site Web de surveillance DNS les étapes comprennent la mise à jour de PHP et des serveurs Web, la sauvegarde du site Web, la surveillance des journaux d'erreurs et la mise à jour du contenu.

Comparaison des performances du C++ avec d'autres langages Comparaison des performances du C++ avec d'autres langages Jun 01, 2024 pm 10:04 PM

Lors du développement d'applications hautes performances, le C++ surpasse les autres langages, notamment dans les micro-benchmarks. Dans les benchmarks macro, les mécanismes de commodité et d'optimisation d'autres langages tels que Java et C# peuvent mieux fonctionner. Dans des cas pratiques, C++ fonctionne bien dans le traitement d'images, les calculs numériques et le développement de jeux, et son contrôle direct de la gestion de la mémoire et de l'accès au matériel apporte des avantages évidents en termes de performances.

Comment implémenter les meilleures pratiques de sécurité PHP Comment implémenter les meilleures pratiques de sécurité PHP May 05, 2024 am 10:51 AM

Comment mettre en œuvre les meilleures pratiques de sécurité PHP PHP est l'un des langages de programmation Web backend les plus populaires utilisés pour créer des sites Web dynamiques et interactifs. Cependant, le code PHP peut être vulnérable à diverses failles de sécurité. La mise en œuvre des meilleures pratiques de sécurité est essentielle pour protéger vos applications Web contre ces menaces. Validation des entrées La validation des entrées est une première étape essentielle pour valider les entrées utilisateur et empêcher les entrées malveillantes telles que l'injection SQL. PHP fournit une variété de fonctions de validation d'entrée, telles que filter_var() et preg_match(). Exemple : $username=filter_var($_POST['username'],FILTER_SANIT

Quel est l'impact sur les performances de la conversion de tableaux PHP en objets ? Quel est l'impact sur les performances de la conversion de tableaux PHP en objets ? Apr 30, 2024 am 08:39 AM

En PHP, la conversion de tableaux en objets aura un impact sur les performances, principalement affecté par des facteurs tels que la taille du tableau, la complexité, la classe d'objet, etc. Pour optimiser les performances, envisagez d'utiliser des itérateurs personnalisés, en évitant les conversions inutiles, les tableaux de conversion par lots et d'autres techniques.

Quelle est la performance des générateurs de nombres aléatoires dans Golang ? Quelle est la performance des générateurs de nombres aléatoires dans Golang ? Jun 01, 2024 pm 09:15 PM

La meilleure façon de générer des nombres aléatoires dans Go dépend du niveau de sécurité requis par votre application. Faible sécurité : utilisez le package math/rand pour générer des nombres pseudo-aléatoires, adaptés à la plupart des applications. Haute sécurité : utilisez le package crypto/rand pour générer des octets aléatoires cryptographiquement sécurisés, adaptés aux applications qui nécessitent un caractère aléatoire plus élevé.

See all articles