Opération et maintenance
Nginx
NGINX PM2 VPS : créez rapidement un serveur d'applications évolutif
NGINX PM2 VPS : créez rapidement un serveur d'applications évolutif

NGINX PM2 VPS : créez rapidement un serveur d'applications évolutif
Introduction :
Dans le développement d'applications moderne, la création d'un serveur d'applications évolutif est devenue cruciale. NGINX, PM2 et VPS sont trois outils puissants, et leur combinaison permet de créer rapidement un serveur d'applications évolutif. Cet article explique comment utiliser ces outils pour créer un serveur d'applications hautes performances et fournit des exemples de code spécifiques.
1. Qu'est-ce que NGINX ?
NGINX est un serveur Web et un serveur proxy inverse hautes performances. Il peut gérer les demandes à haute concurrence, répondre rapidement et dispose d'un équilibrage de charge et d'une sécurité fiables. Lors de la création d'un serveur d'applications évolutif, NGINX est généralement utilisé comme serveur frontal pour recevoir les demandes des clients et transmettre les demandes au serveur d'applications principal.
2. Qu'est-ce que les PM2 ?
PM2 est un outil de gestion de processus qui peut fournir des fonctions de gestion et de surveillance des applications lorsque les applications Node.js sont en cours d'exécution. PM2 garantit un fonctionnement stable de l'application, redémarre automatiquement l'application et fournit des journaux d'erreurs lorsque l'application plante. Lors de la création d'un serveur d'applications évolutif, PM2 peut être utilisé pour gérer et surveiller plusieurs processus d'application.
3. Qu'est-ce que le VPS ?
VPS (Virtual Private Server) est une technologie de virtualisation qui permet de diviser plusieurs serveurs virtuels indépendants sur un serveur physique. Chaque serveur virtuel possède son propre système d'exploitation et ses propres ressources et peut exécuter des applications de manière indépendante. Lors de la création d'un serveur d'applications évolutif, vous pouvez utiliser VPS pour allouer et gérer des serveurs virtuels pour plusieurs applications.
Quatre étapes pour créer rapidement un serveur d'applications évolutif :
- Acheter un VPS
Tout d'abord, vous devez acheter un VPS. Vous pouvez choisir des fournisseurs de VPS bien connus, tels que Alibaba Cloud, Tencent Cloud, etc. Choisissez la configuration qui correspond à vos besoins et achetez un ou plusieurs VPS. - Installez NGINX
Connectez-vous au VPS et installez NGINX via des outils de gestion de packages (tels que apt, yum). Une fois l'installation terminée, exécutez la commande suivante pour démarrer le service NGINX :
sudo systemctl start nginx
- Configurez le proxy inverse NGINX
Modifiez le fichier de configuration NGINX/etc/nginx/sites-available/default, ajoutez le contenu suivant et ajoutez le client Transférez la requête au serveur d'application backend :/etc/nginx/sites-available/default,添加以下内容,将客户端的请求转发到后端的应用服务器:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}保存并退出配置文件,然后重新加载 NGINX 配置:
sudo systemctl reload nginx
- 安装 Node.js 和 PM2
使用包管理工具安装 Node.js,并全局安装 PM2。安装完成后,进入应用程序的根目录,执行以下命令启动应用程序:
pm2 start app.js
应用程序现在会在后台运行,并由 PM2 进程管理工具监控。可以使用以下命令查看应用程序的状态:
pm2 list
- 添加更多的应用程序
如果要添加更多的应用程序,可以在不同的端口上启动多个应用程序进程。例如,要添加第二个应用程序,可以执行以下命令:
pm2 start app2.js
- 配置负载均衡器
如果希望将请求分发到不同的后端应用服务器,可以使用负载均衡器来实现。可以使用 NGINX 的 upstream 模块来配置负载均衡。编辑 NGINX 配置文件/etc/nginx/sites-available/default
upstream backend {
server localhost:3000;
server localhost:3001;
# 添加更多的后端服务器
}
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}sudo systemctl reload nginx
- Installez Node. js et PM2
Utilisez l'outil de gestion de packages pour installer Node js et installez PM2 globalement. Une fois l'installation terminée, accédez au répertoire racine de l'application et exécutez la commande suivante pour démarrer l'application :
rrreee
L'application s'exécutera désormais en arrière-plan et sera surveillée par l'outil de gestion des processus PM2. Vous pouvez afficher l'état de l'application à l'aide de la commande suivante :
- 🎜Ajouter plus d'applications🎜Si vous souhaitez ajouter plus d'applications, vous pouvez démarrer plusieurs processus de candidature sur différents ports. Par exemple, pour ajouter une deuxième application, vous pouvez exécuter la commande suivante : 🎜🎜rrreee
- 🎜Configurer un équilibreur de charge🎜Si vous souhaitez distribuer les requêtes vers différents serveurs d'applications backend, vous pouvez utiliser un équilibreur de charge équilibreur à réaliser. L'équilibrage de charge peut être configuré à l'aide du module en amont de NGINX. Modifiez le fichier de configuration NGINX
/etc/nginx/sites-available/default et ajoutez ce qui suit : 🎜🎜rrreee🎜Enregistrez et quittez le fichier de configuration, puis rechargez la configuration NGINX : 🎜rrreee🎜Maintenant, NGINX demandera la distribution à différents serveurs d'applications back-end pour réaliser l'équilibrage de charge. 🎜🎜Conclusion : 🎜En combinant NGINX, PM2 et VPS, vous pouvez rapidement créer un serveur d'applications évolutif. NGINX fournit des fonctions de traitement des requêtes et d'équilibrage de charge hautes performances, PM2 fournit des fonctions de gestion et de surveillance des applications et VPS fournit un environnement virtuel pour exécuter des applications de manière indépendante. J'espère que les exemples de code fournis dans cet article seront utiles pour créer un serveur d'applications évolutif. 🎜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!
Outils d'IA chauds
Undress AI Tool
Images de déshabillage gratuites
Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes
AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.
Clothoff.io
Dissolvant de vêtements AI
Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !
Article chaud
Outils chauds
Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit
SublimeText3 version chinoise
Version chinoise, très simple à utiliser
Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP
Dreamweaver CS6
Outils de développement Web visuel
SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)
Sujets chauds
Comment démarrer un conteneur par Docker
Apr 15, 2025 pm 12:27 PM
Étapes de démarrage du conteneur Docker: Tirez l'image du conteneur: Exécutez "Docker Pull [Mirror Name]". Créer un conteneur: utilisez "Docker Create [Options] [Mirror Name] [Commandes et paramètres]". Démarrez le conteneur: exécutez "docker start [nom de conteneur ou id]". Vérifiez l'état du conteneur: vérifiez que le conteneur s'exécute avec "Docker PS".
Comment vérifier le nom du conteneur Docker
Apr 15, 2025 pm 12:21 PM
Vous pouvez interroger le nom du conteneur Docker en suivant les étapes: répertorier tous les conteneurs (Docker PS). Filtrez la liste des conteneurs (à l'aide de la commande grep). Obtient le nom du conteneur (situé dans la colonne "Noms").
Comment créer des conteneurs pour Docker
Apr 15, 2025 pm 12:18 PM
Créer un conteneur dans Docker: 1. Tirez l'image: docker pull [Nom du miroir] 2. Créer un conteneur: docker run [Options] [Nom du miroir] [Commande] 3. Démarrez le conteneur: docker start [Nom du conteneur]
Choisir entre Nginx et Apache: le bon ajustement pour vos besoins
Apr 15, 2025 am 12:04 AM
Nginx et Apache ont leurs propres avantages et inconvénients et conviennent à différents scénarios. 1.Nginx convient aux scénarios élevés de la concurrence et de la consommation de ressources faibles. 2. Apache convient aux scénarios où des configurations complexes et des modules riches sont nécessaires. En comparant leurs fonctionnalités principales, leurs différences de performances et leurs meilleures pratiques, vous pouvez vous aider à choisir le logiciel du serveur qui convient le mieux à vos besoins.
Méthode d'optimisation des performances PHPStorm sous CentOS
Apr 14, 2025 pm 05:30 PM
Conseils pratiques pour améliorer les performances de PHPStorm dans les systèmes CentOS Cet article fournit une variété de méthodes pour vous aider à optimiser les performances de PHPStorm dans les systèmes CentOS et ainsi améliorer l'efficacité du développement. Avant de mettre en œuvre des mesures d'optimisation, assurez-vous de sauvegarder des données importantes et de vérifier les résultats dans l'environnement de test. 1. Optimisation au niveau du système et Streamline Services système: Désactivez les services système et les démons inutiles pour réduire l'utilisation des ressources système. Mode sans interface: le passage au mode sans interface peut économiser considérablement les ressources si vous n'avez pas besoin d'une interface graphique. Désinstaller le logiciel redondant: supprimer les packages et services logiciels qui ne sont plus utilisés et libérés des ressources système. 2.
Nginx vs Apache: performance, évolutivité et efficacité
Apr 19, 2025 am 12:05 AM
Nginx et Apache sont tous deux des serveurs Web puissants, chacun avec des avantages et des inconvénients uniques en termes de performances, d'évolutivité et d'efficacité. 1) Nginx fonctionne bien lors de la gestion du contenu statique et de la proxyation inverse, adaptée aux scénarios de concurrence élevés. 2) Apache fonctionne mieux lors du traitement du contenu dynamique et convient aux projets qui nécessitent une prise en charge des modules riches. La sélection d'un serveur doit être déterminée en fonction des exigences et des scénarios du projet.
Nginx vs Apache: une analyse comparative des serveurs Web
Apr 21, 2025 am 12:08 AM
Nginx convient plus à la gestion des connexions simultanées élevées, tandis qu'Apache convient plus aux scénarios où des configurations complexes et des extensions de module sont nécessaires. 1.Nginx est connu pour ses performances élevées et sa faible consommation de ressources, et convient à une concurrence élevée. 2.Apache est connu pour sa stabilité et ses riches extensions de modules, qui conviennent aux besoins de configuration complexes.
Nginx et Apache: comprendre les principales différences
Apr 26, 2025 am 12:01 AM
Nginx et Apache ont chacun leurs propres avantages et inconvénients, et le choix doit être basé sur des besoins spécifiques. 1.Nginx convient aux scénarios de concurrence élevés en raison de son architecture asynchrone non bloquant. 2. Apache convient aux scénarios à faible monnaie qui nécessitent des configurations complexes, en raison de sa conception modulaire.


