Apache mod php или FastCGI? Что хорошо для Wordpress?
У меня есть основная идея о запуске PHP в разных конфигурациях, таких как mod_php, cgi, FastCGI и т. д.
в моих выводах и тесте я обнаружил, что FastCGI немного лучше. Мне больше всего нравится поддержка FastCGI для SuEXEC. Подождите, я не хочу снова заниматься бенчмаркингом. Если вы занимаетесь серфингом в интернете, вы найдете людей, доказывающих, что один способ быстрее, чем другой, с точки зрения количества запросов, обрабатываемых в секунду. Хорошая метрика, но меня интересуют разные факторы, и вот мой вопрос...
- какой метод запуска PHP потребляет меньше памяти?
- также Какой метод потребляет память почти постоянной. Я вижу, что с mod_php использование памяти моих серверов колеблется между 300MB и 800MB каждые несколько секунд.
- но с FastCGI, первый ответ от сервера приходит очень поздно. Я вижу, что с FastCGI есть начальная задержка на запрос веб-страницы. Как только приходит первый ответ от сервера, другие элементы, такие как изображения, css, JS, загружаются довольно быстрее.
- это нормально работать вместе? У меня есть 5 сайтов на выделенном сервере. Это нормально, если я запускаю несколько с mod_php и отдыхаю с FastCGI?
- Я уверен, что мой сервер падает в основном из-за неправильного использования памяти mod_php. Я проверил все сценарии. Есть ли способ убедиться, что потребление памяти на сервере остается почти постоянным?
- не сложность .htaccess значительно влияет на использование памяти? Если да, может ли это быть единственной причиной для запуска сервера память?
- влияют ли настройки Apache MPM prefork / worker на потребление памяти? Влияют ли они на mod_php и режим FastCGI одинаково?
- когда я запускаю команду "top", я вижу, что apache (httpd) потребляет память около 40 МБ. Существует множество запущенных экземпляров httpd. Также В дополнение к этому FastCGI развивает некоторые процессы аналогичного размера. Какой нормальный размер памяти для процесса httpd?
- поскольку я запускаю Wordpress на всех наших сайтах, что будет хорошим способом в этом контекст?
- FastCGI / SuExec отлично работает с APC? Нужно ли переконфигурировать APC для работы с SuEXEC и FastCGI.
обратите внимание, я меньше заинтересован в выживании против DIGG или дорожных шипов. Мне нужен способ, который может сделать сервер стабильным и предсказуемым.
Извините, если я запутался, но я действительно в беспорядке. У меня 512 МБ ОЗУ, 400 МБ свопа и мой сервер работает из памяти, как сумасшедший. Среднее требование к памяти вокруг 350MB, его как раз всплески использования памяти делают память недоступной в течение нескольких секунд, и если несколько дополнительных хитов, полученных в этих нескольких секундах, apache разбился, а mysql и все другие парни продолжают работать нормально.
пожалуйста, помогите мне ребята. Я не собираюсь покупать больше ОЗУ или оборудования. Я чертовски уверен, что проблема в моей конфигурации. Извини, если это звучит высокомерно или невежда.
2 ответов
какой метод запуска PHP потребляет меньше памяти?
Я предполагаю, что в PHP-обработанном запросе они более или менее одинаковы. Но если у вас есть mod_php, загруженный в Apache, обслуживающий изображения, то я предполагаю, что ваш объем памяти будет выше из-за обслуживания статических файлов.
также Какой метод потребляет память почти постоянной. Я вижу, что с mod_php использование памяти моих серверов колеблется между 300MB и 800MB, каждые несколько считанные секунды.
вы можете сделать довольно постоянным. Если вы тщательно установите MaxClients, MinSpareServers и MaxSpareServers, вы в значительной степени можете сказать, сколько процессов запущено. Если вы также установите memory_limit в своей конфигурации PHP,вы можете рассчитать, сколько памяти вам нужно. Вы также можете сделать то же самое для fcgi, так как вы можете решить, сколько процессов запущено.
но с FastCGI, первый ответ от сервера приходит очень поздно. Я вижу, что с FastCGI есть начальная задержка на запрос веб-страницы. Как только приходит первый ответ от сервера, другие элементы, такие как изображения, css, js, загружаются довольно быстро.
Это не имеет смысла. Я не уверен, почему это происходит в вашем случае.
можно ли запустить mix обоих? У меня есть 5 сайтов на выделенном сервере. Это нормально, если я запускаю несколько с mod_php и отдыхаю с FastCGI?
Я думаю, но это будет кошмар для поддержания и, вероятно, будет сложнее настроить для экономия. Как раз наоборот, я думаю.
Я уверен, что мой сервер падает в основном из-за неправильного использования памяти mod_php. Я проверил все сценарии. Есть ли способ убедиться, что потребление памяти на сервере остается почти постоянным?
настройте память и процессы, как я описал выше, и продолжайте мониторинг.
Не сложность .htaccess значительно влияет на использование памяти? Если да, то может ли это быть единственная причина, по которой у сервера заканчивается память?
Я так не думаю. по каталогу .htaccess может замедлить работу, но если в Apache нет серьезной ошибки, это не должно вызывать массового потребления памяти.
влияют ли настройки Apache MPM prefork / worker на потребление памяти? Влияют ли они на mod_php и режим FastCGI одинаково?
это может быть, но я рекомендую держаться подальше от рабочего, так как PHP в основном не поток безопасный.
когда я запускаю команду "top", я вижу, что apache (httpd) потребляет память около 40 МБ. Существует множество запущенных экземпляров httpd. Также В дополнение к этому FastCGI развивает некоторые процессы аналогичного размера. Какой нормальный размер памяти для процесса httpd?
30MB минута. Верхний предел зависит от вашего приложения (я видел случаи, когда это было ~1 ГБ)
поскольку я запускаю Wordpress на всех наших сайтах, что будет хорошим способом этот контекст?
Это, вероятно, вопрос вкуса. Недавно я отошел от apache в сторону nginx+fastcgi. это займет немного времени, чтобы привыкнуть, но это работает хорошо. Никаких проблем с wordpress (даже не с supercache, который скорее связан с веб-сервером).
FastCGI / SuExec отлично работает с APC? Нужно ли переконфигурировать APC для работы с SuEXEC и FastCGI.
Я не использую suExec, но fastcgi хорошо работает с APC. Не нужно ничего настраивать.
попробовал переключиться на mod_php, который, многие утверждают, что это скорость. Не понял mod_php, который ожоги через дополнительную память при подаче статические файлы. (Я не очень заботился о проблеме безопасности с файлами root owning).
без установки CDN,FastCGI-сервера ваш выбор для обслуживания приложений PHP. Без него переключение с fcgi по to mod_php, который замедлился моя страница время создания пути вниз, от 3895ms в 6264ms (страницы админа хостинга).