Мне интересно, почему сайты вообще падают.
Если у сервера слишком много запросов, он может поставить запрос в очередь в своих списках ожидания и обслужить его, когда все предыдущие запросы будут обработаны. Это означает, что запрос на веб-сайт будет обработан, хотя это может занять больше времени, чем ожидалось.
Тогда как же сайты падают из-за перегрузки сервера?
Веб-сайты не «падают».
Веб-серверы настроены на прекращение приема новых посетителей, если количество запросов в очереди запросов превышает заранее определенное количество. Когда этот предел достигнут, сообщение об ошибке отображается.
503 Сервис недоступен
В настоящее время сервер не может обработать запрос из-за временной перегрузки или обслуживания сервера. Подразумевается, что это временное состояние, которое улучшится после некоторой задержки. Если известно, продолжительность задержки МОЖЕТ быть указана в заголовке Retry-After. Если Retry-After не задан, клиент ДОЛЖЕН обработать ответ так же, как и для ответа 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.
В очень простом сценарии список ожидания может заполниться, а сервер настолько занят обработкой / игнорированием новых запросов, что может эффективно обрабатывать запросы в очереди.
Взгляни на http://en.wikipedia.org/wiki/Denial-of-service_attack
Много способов: