Maison >développement back-end >tutoriel php >Comment configurer le serveur proxy Nginx pour limiter le nombre de connexions simultanées à un service web ?
Comment configurer le serveur proxy Nginx pour limiter le nombre de connexions simultanées pour un service web ?
Introduction :
Avec le développement d'applications web, afin de garantir l'expérience utilisateur et la stabilité des services, il est crucial de limiter le nombre de connexions simultanées des services web. En tant que serveur Web hautes performances et serveur proxy inverse, Nginx offre une multitude d'options de configuration qui peuvent nous aider à limiter facilement le nombre de connexions simultanées. Cet article explique comment configurer le serveur proxy Nginx pour limiter le nombre de connexions simultanées pour le service Web et fournit des exemples de code correspondants.
1. Installez Nginx :
Tout d'abord, nous devons installer Nginx. Voici un exemple de commande pour installer Nginx sur Ubuntu :
$ sudo apt update $ sudo apt install nginx
2. Configurez le serveur proxy Nginx :
Ouvrez le fichier de configuration Nginx :
$ sudo nano /etc/nginx/nginx.conf
Ajoutez la configuration suivante dans le bloc http :
http { ... # 限制并发连接数为100 limit_conn_zone $binary_remote_addr zone=concurrent:10m; server { ... # 限制并发连接数为10 limit_conn concurrent 10; ... } }
dans ce qui précède Dans l'exemple de configuration, nous utilisons le module limit_conn de Nginx pour limiter le nombre de connexions simultanées. Parmi eux, limit_conn_zone
用于定义一个共享内存区域,以存储并发连接数的状态信息,并设置了10m的大小;limit_conn
est utilisé pour limiter le nombre de connexions simultanées à 10 dans chaque bloc de serveur. Vous pouvez l'ajuster en fonction des besoins réels.
3. Redémarrez le service Nginx :
Après avoir terminé la configuration, nous devons redémarrer le service Nginx pour que la configuration prenne effet :
$ sudo systemctl restart nginx
4 Vérifiez la configuration :
Nous pouvons utiliser la commande ab pour vérifier si. la configuration est efficace. Voici un exemple d'utilisation de la commande ab pour les tests de stress :
$ ab -c 100 -n 1000 http://localhost/
Dans l'exemple ci-dessus, nous définissons le nombre de requêtes simultanées à 100 via le paramètre -c, le nombre total de requêtes à 1000 via le paramètre -n, et l'URL consultée est http://localhost /. Si la configuration prend effet, vous verrez un résultat similaire à celui-ci :
Concurrency Level: 100 Time taken for tests: 10.000 seconds Complete requests: 1000 Failed requests: 0 Total transferred: 158000 bytes ...
Conclusion :
En configurant le serveur proxy Nginx, nous pouvons facilement limiter le nombre de connexions simultanées au service Web. L'exemple de configuration ci-dessus peut vous aider à implémenter rapidement cette fonction. Bien entendu, vous devrez peut-être effectuer quelques ajustements et modifications en fonction de scénarios d'utilisation et de besoins spécifiques. J'espère que cet article vous aidera !
Lien de référence :
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!