Почему загрузка файлов прекращается на занятом сервере LAMP? - PullRequest
0 голосов
/ 01 сентября 2009

У нас достаточно ламповый сервер, загрузка ЦП колеблется около 90% в часы пиковой нагрузки. У нас периодически возникает проблема, когда загрузка файлов из веб-форм не удалась. Похоже, что это происходит только с большими файлами (более мегабайта), и это влияет на некоторых пользователей больше, чем на других. Мы прошли и проверили очевидные вещи, такие как максимальный размер загрузки PHP, время выполнения и права на запись в папку. Кроме того, сайт работал в течение года без проблем, как это, и это внезапно началось (мы не думаем, что какой-либо из наших php приложений может вызвать это).

Мы наблюдали за тем, что происходит в Charles Proxy, и он показывает, что происходит загрузка (размер отправляемых файлов регулярно увеличивается), пока он просто не прекратит отправку данных. Браузер просто показывает, что он вращается, как будто он продолжается, но вы можете подождать 20 минут, и ничего не произойдет, или он сообщает об истечении времени ожидания.

Кто-нибудь знает, почему загрузка может периодически прерываться? Мое единственное предположение, что, возможно, это связано с серверным трафиком, как, например, apache преждевременно закрывает это соединение.

1 Ответ

1 голос
/ 01 сентября 2009

Если нагрузка на сервер высока, возможно, ваши сценарии задерживаются при попытке загрузить файл. Можете ли вы дать более подробную информацию о вашей проблеме? Я думаю, что PHP-скрипты по умолчанию имеют 30-секундный тайм-аут, а это означает, что если скрипт не завершил, то есть загрузку файла в течение этого периода времени, то скрипт будет тайм-аут и загрузка не удастся.

Похоже, что если сайт работал более года, а теперь трафик вырос до такой степени, что он начинает увеличивать нагрузку на сервер, то возможно, что сценарии истекают из-за увеличения трафика и нагрузки на сервере.

...