Maison >interface Web >js tutoriel >Explication détaillée de la limite de numéro de connexion de la limite de vitesse nginx

Explication détaillée de la limite de numéro de connexion de la limite de vitesse nginx

小云云
小云云original
2018-01-11 13:11:112203parcourir

Nous rencontrons souvent cette situation, un trafic serveur anormal, une charge excessive, etc. Pour les attaques malveillantes à fort trafic, cela entraînera un gaspillage de bande passante, une pression sur le serveur et affectera l'entreprise. Il est souvent considéré comme limitant le nombre de connexions et le nombre de concurrence pour une même IP. Je n'entrerai pas dans les détails sur la façon d'utiliser la limite de vitesse du module intégré de nginx. Aujourd'hui, parlons de la limite de vitesse sur le nombre de connexions et le nombre de connexions uniques. Pas grand chose à dire, jetons un œil à l’introduction détaillée.

Scénario :

La société A compte 100 personnes et la société A n'a qu'une seule adresse IP publique. Supposons que 100 personnes dans la société A téléchargent les fichiers de votre site Web en même temps.

Cependant, votre configuration de limite de connexion est :

limit_conn_zone $binary_remote_addr zone=perip:1m;
server {
 ---
 limit_conn perip 1;
 limit_rate 1024k;
 ---
}

Une seule connexion est autorisée et la bande passante maximale d'une seule connexion est de 1 M.

De cette façon, 99 personnes auront un statut de demande de 503, et les autres devront attendre manuellement si elles souhaitent télécharger (nginx n'informera pas les utilisateurs que l'utilisateur A a terminé le téléchargement, et c'est votre tournez pour que l'utilisateur B télécharge). Cela se traduit par une expérience utilisateur extrêmement médiocre. Mais les avantages sont également évidents et la bande passante va bientôt diminuer.

Quelqu’un pourrait se demander : essayez-vous de semer le trouble en limitant le nombre de connexions à un nombre très faible ? NON, absolument pas. Quelle est la probabilité que les 100 premières personnes téléchargent les ressources du site Web en même temps ? Je n'ai pas fait de statistiques, mais c'est extrêmement improbable. De plus, la page frontale et les ressources de téléchargement ne partagent pas le même nom de domaine, donc l’accès à la page frontale ne sera pas affecté.
Qui utilise beaucoup de connexions ? Divisé en deux catégories :

  • Outils de téléchargement (Thunder).

  • Divers programmes de collecte.

  • Effectuez plusieurs tâches de téléchargement en même temps.

Xiao Ming regardait la télévision joyeusement. Il a jeté un coup d'œil à l'écran de gauche et a saisi l'herbe. La bande passante était à nouveau pleine. Allez, limite la vitesse. >

Xiao Ming a appliqué la limite de vitesse suivante. OK, laissez-moi vous dire qui a la limite de vitesse. Bien sûr, c'est l'utilisateur du téléchargement du navigateur. Le téléchargeur de 360 ​​Browser ne sera peut-être pas en mesure de la limiter. calculer la vitesse.
limit_conn_zone $binary_remote_addr zone=perip:1m;
server {
 ---
 limit_rate 1024k;
 ---
}


Navigateur : 2014K


Téléchargeur : 1024 * 15 (nombre maximum de connexions) * VIP


Collecteur : 1024 * Numéro de connexion

Nous obtenons donc la conclusion suivante :

La bande passante est limitée et la situation des téléchargements simultanés à partir de la même IP est très faible, ou c'est une activité prévisible, alors essayez de limiter le nombre de connexions aussi petites que possible.


Au contraire, ne vous limitez pas. Réduisez simplement la bande passante d’une seule connexion ! Vous voulez savoir qui d’entre vous peut utiliser le téléchargeur fourni avec le navigateur pour télécharger ?


Remarque : cet article traite uniquement de la limite de vitesse du module de limitation de vitesse nginx sous différentes entreprises

Easter egg : de temps en temps, j'ai constaté que Xunlei ne pouvait pas télécharger à grande vitesse lorsque le nombre de Les connexions sont limitées à 1.

Recommandations associées :

Tutoriel d'exemple de page statique de configuration de React par Nginx

Que diriez-vous d'Apache et Nginx Select

Comment implémenter un proxy inverse à l'aide de Nginx en php

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:
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