Tutoriel avancé : Optimiser les performances des serveurs VPS à l'aide de NGINX et PM2
Résumé :
Avec le développement d'Internet, de plus en plus de personnes choisissent de déployer leurs sites Web sur des serveurs VPS. Cependant, à mesure que le trafic sur le site Web augmente, les performances du serveur peuvent devenir problématiques. Cet article expliquera comment utiliser NGINX et PM2 pour optimiser les performances du serveur VPS et fournira des exemples de code spécifiques.
Introduction :
Le serveur VPS est une option relativement peu coûteuse et flexible, il devient donc de plus en plus populaire dans le déploiement de sites Web. Cependant, dès qu’un site Web commence à attirer un grand nombre de visiteurs, l’optimisation des performances du serveur devient très importante. Dans ce cas, utiliser une combinaison de NGINX et PM2 est une solution courante. NGINX est un serveur Web et un serveur proxy inverse hautes performances, tandis que PM2 est un puissant outil de gestion de processus.
Étape 1 : Installer NGINX
Tout d'abord, nous devons installer NGINX. Utilisez la commande suivante pour installer NGINX sur Ubuntu :
$ sudo apt-get update $ sudo apt-get install nginx
Une fois l'installation terminée, nous pouvons utiliser la commande suivante pour démarrer NGINX :
$ sudo systemctl start nginx
Étape deux : configurer NGINX
Ensuite, nous devons configurer NGINX pour améliorer les performances. Ouvrez le fichier de configuration NGINX et apportez les modifications suivantes :
$ sudo nano /etc/nginx/nginx.conf
Recherchez et décommentez la ligne suivante :
worker_processes auto;
Modifiez les paramètres suivants avec des valeurs appropriées pour votre serveur :
worker_connections 4096;
Enregistrez et fermez le fichier. Rechargez ensuite la configuration NGINX :
$ sudo systemctl reload nginx
Troisième étape : Installer PM2
Maintenant, nous allons installer et configurer PM2 pour gérer notre application. Tout d'abord, installez PM2 globalement en utilisant npm :
$ sudo npm install pm2 -g
Une fois l'installation terminée, nous pouvons utiliser la commande suivante pour démarrer une application Node.js :
$ pm2 start app.js
Où, app.js est le fichier d'entrée de l'application Node.js que vous veux commencer. Utilisez la commande suivante pour afficher les applications en cours d'exécution :
$ pm2 list
Étape 4 : Configurer PM2 pour qu'il démarre automatiquement
Pour que PM2 démarre automatiquement notre application après le redémarrage du serveur, nous devons configurer le script de démarrage automatique de PM2. Utilisez la commande suivante pour générer un script à démarrage automatique :
$ pm2 startup
Ensuite, suivez les invites pour exécuter la commande générée. Après l'exécution, redémarrez le serveur pour confirmer si le script de démarrage automatique fonctionne correctement.
Conclusion :
En utilisant NGINX et PM2, nous pouvons optimiser efficacement les performances du serveur VPS. En tant que serveur proxy inverse, NGINX peut fournir des services de fichiers statiques hautes performances et planifier des requêtes pour améliorer la réactivité du site Web. PM2 est un puissant outil de gestion de processus qui garantit que les applications sont toujours en cours d'exécution et démarrent automatiquement après le redémarrage du serveur. En suivant les étapes de cet article et en les ajustant en fonction de vos besoins, vous pourrez offrir de meilleures performances à votre serveur VPS.
P.S. : Voici un exemple de fichier de configuration NGINX et PM2 complet pour le proxy inverse et l'équilibrage de charge d'une application Node.js :
events { worker_connections 4096; } http { upstream app { server 127.0.0.1:3000; server 127.0.0.1:3001; server 127.0.0.1:3002; } server { listen 80; server_name example.com; location / { proxy_pass http://app; 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; } } }
Veuillez modifier en conséquence en fonction des besoins de votre serveur et de votre application.
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!