Comment configurer le serveur proxy Nginx pour limiter le nombre de connexions simultanées à un service web ?

王林
Libérer: 2023-09-05 10:10:02
original
1666 Les gens l'ont consulté

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
Copier après la connexion

2. Configurez le serveur proxy Nginx :

  1. Ouvrez le fichier de configuration Nginx :

    $ sudo nano /etc/nginx/nginx.conf
    Copier après la connexion
  2. 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;
     
         ...
     }
    }
    Copier après la connexion

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
Copier après la connexion

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/
Copier après la connexion

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
...
Copier après la connexion

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 :

  • Documentation officielle de Nginx : https://nginx.org/en/docs/
  • Module limit_conn de Nginx : https://nginx.org/en/docs/http/ngx_http_limit_conn_module.html

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!

source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!