3 votes

Comment un trop grand nombre de demandes peut faire tomber un serveur en panne ?

Je me demande pourquoi les sites web se plantent.

Si un serveur a trop de demandes, il peut mettre la requête en attente dans ses listes d'attente et la servir lorsque toutes les demandes précédentes ont été traitées. Cela signifie que la demande pour le site web sera prise en charge, bien que cela puisse prendre un peu plus de temps que prévu.

Alors, comment se fait-il que des sites web tombent en panne à cause de la surcharge des serveurs ?

4voto

Rippo Points 10580

Les sites web ne "plantent" pas.

Les serveurs Web sont configurés pour cesser d'accepter de nouveaux visiteurs si les demandes dans la file d'attente des demandes dépassent un nombre prédéterminé. Lorsque cette limite est atteinte, un message d'erreur s'affiche.

503 Service indisponible

Le serveur est actuellement incapable de traiter la demande en raison d'une surcharge ou maintenance du serveur. L'implication est que cette est une condition temporaire qui sera qui se résorbera après un certain temps. Si elle est connue, la durée de ce délai PEUT être indiquée indiquée dans un en-tête Retry-After. Si aucun Retry-After n'est donné, le client doit DEVRAIT traiter la réponse comme il le ferait pour une réponse 500.

  Note: The existence of the 503 status code does not imply that a
  server must use it when becoming overloaded. Some servers may wish
  to simply refuse the connection.

2 votes

@TFM : Cela signifie-t-il que le serveur traite toujours les demandes, mais que ma demande est trop longue dans la file d'attente pour être traitée correctement ?

2 votes

Cela dépend. Avant qu'une requête n'atteigne le logiciel du serveur web, elle doit passer par un réseau, l'interface réseau de la machine et le système d'exploitation. Si l'un de ces facteurs ne peut pas faire face à la quantité de demandes envoyées au serveur, la demande n'atteindra même pas le logiciel du serveur web. Dans ce cas, il n'y aura pas de réponse 503 du serveur.

0 votes

@TFM Combien de demandes l'interface réseau et le système d'exploitation peuvent-ils traiter ? Et comment augmenter cette valeur ?

2voto

Dans un scénario très simple, la liste d'attente peut se remplir et le serveur est tellement occupé à traiter/ignorer les nouvelles demandes qu'il ne peut pas traiter efficacement les demandes dans la file d'attente.

Jetez un coup d'œil à http://en.wikipedia.org/wiki/Denial-of-service_attack

2voto

Mike42 Points 849

De nombreuses façons :

  • La bande passante disponible sur le serveur est limitée. Si un attaquant parvient à inonder de trafic la connexion du site Web cible, il peut mettre le site hors ligne.
  • "mettre en file d'attente la demande dans ses listes d'attente et la servir lorsque toutes les demandes précédentes ont été servies". La mise en file d'attente des demandes prend du temps en soi. Si un attaquant peut envoyer des demandes plus rapidement que le serveur n'est capable de les mettre en file d'attente, il peut mettre le site hors ligne.
  • Le serveur web dépend d'autres ressources, comme un serveur de base de données ou le système de fichiers. Si un attaquant parvient à envoyer suffisamment de requêtes pour surcharger la base de données, il peut mettre le site hors ligne.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X