Можно попробовать http://tzukanov.narod.ru/convertfs/, Когда я использовал его несколько лет назад, это работало в одном случае и повредило файловую систему в другом случае.
Вы разрешаете Apache создавать до 1500 дочерних элементов для обслуживания запросов ( ServerLimit
/ MaxClients
) - неудивительно, что нагрузка на ваш сервер ( количество процессов, ожидающих в очереди выполнения) становится огромным!
Мои первые предложения при 400 запросах в секунду с числами, которые вы указываете в своем вопросе, были бы «Переместите сервер MySQL в его собственный ящик» или, возможно, лучше выбор: «Добавить еще один веб-сервер и распределить нагрузку по вашим запросам».
Чтобы помочь вам определить размер дополнительного сервера, следуйте совету HDDP500, который дал в своем ответе, чтобы определить средний размер процесса Apache. Выясните, сколько процессов apache вы хотите запустить на новом сервере, и определите, сколько оперативной памяти вам понадобится для их обработки. Не забудьте добавить запас прочности (гигабайт или два).
Определить требования к ЦП (скорость / количество ядер) немного сложнее - вам нужно будет принять во внимание, сколько «работы» должен выполнить сервер. для создания каждой страницы. Такой инструмент, как XDebug , может помочь вам здесь, сообщив, сколько времени требуется для создания страницы (вы должны выполнить этот тест на выгруженном сервере, а также на сервере под нагрузкой, но вы также должны не в большинстве случаев использовать такой инструмент, как XDebug, на рабочем сервере.)
Каков средний размер ваших процессов httpd?
Запустите эту команду, когда сервер находится под нагрузкой:
ps -ylC httpd --sort:rss | awk '{sum+=$8; ++n} END {print "Tot="sum"("n")";print "Avg="sum"/"n"="sum/n/1024"MB"}'
Это покажет вам примерно средний размер процесса Apache.
Ваш MaxClients, вероятно, слишком велик.
Взгляните на прерывания вашего процессора и посмотрите, где начинается узкое место (через top
); как упоминалось ранее, было бы неплохо набрать ServerLimit
/ MaxClients
.
В зависимости от вашего потребления, это может (должно) ускорить работу, поскольку вы уменьшите способность коробки истощать CPU.