Как оптимизировать работу PHP на VPS

1 234 5
TA
На сайте с 12.06.2009
Offline
116
TiA
#21
Adminstation:
Доступное объяснение на http://openhosting.ru/vps/xen-vs-openvz.jsp

Зачем вы ссылку кинули? Я тоже поиском умею пользоваться.

Raistlin:
Мозгами пошевелите. Если оверселл на ноде, там никакая настройка не поможет.

А если не если? Версию с оверселом нужно грамотно проверить, а не списывать со старта все на хостера и советовать XEN. Если оверсел действительно имеет место, то нужно просто сменить хостера, если нет, то настраивать сервер и скрипты.

Raistlin:
Откуда ж вы такие умные беретесь? Пример такой настройки в студию.

Вот так сразу, да? Apache настраивается под конкретные скрипты, их потребление памяти, а также требования к модулям.

Распишу что происходит у Вентилятор. Он запускает проверку на host-tracker.com. Этот сервис генерирует довольно много обращений и сразу. Обработкой запросов занимается apache2 с mpm prefork. В настройках по-умолчанию директива MaxClients неоправданно высока. Если я не ошибаюсь, она имеет значение по-умолчанию 150. При работе WP с настройками по-умолчанию процессы Apache2 кушают около 60 Мб. В оперативке таких процессов поместится 4. Учитывая что на VPS-ку может выделяться до 1024 Мб памяти это количество может быть увеличено до 16.

Поскольку в настройках указано значение в 150, буферизации запросов не происходит и Apache пытается создать столько форков, сколько нужно для обработки всех запросов. Таких процессов может быть до 150. На самом деле когда число таких процессов превышает 4-16, возникает out of memory. Память банально кончилась. Это, собственно, и происходит.

Профессиональная верстка и разработка сайтов на WordPress (http://www.maultalk.com/topic139110s0.html)
Raistlin
На сайте с 01.02.2010
Offline
247
#22

ню-ню. У меня с дефолтными настройками ВДСка на 512 метров почему-то пашед... После хост-трекера. Это каг таг? Память кончилась банально - ну естесно. Эт жеж ОВЗ. Я вообще не понимаю, откуда вы взяли 60 метров на процесс апача, когда там 10 метрофф... Чуть больше. И это на x86_64. Считайте, сколько на гиг влезет. Память не может занять именно PHP.

И, да. Пример того, как ноду можно завалить ксеновую. А не конкретный ВДС.

Raistlin добавил 20.06.2011 в 13:46

KM.UA:
Мне кажется, ISPmanager не там где вам нужно memory_limit крутит.

Вот это более вероятно. Это я сам наблюдал.

HostAce - Асы в своем деле (http://hostace.ru)
TA
На сайте с 12.06.2009
Offline
116
TiA
#23
Raistlin:
ню-ню. У меня с дефолтными настройками ВДСка на 512 метров почему-то пашед...

Ключевое слово "у вас" :) Сам факт что у вас VDS пашет на дефолтных настройках много говорит о вас как об администраторе. Вас ждут великие сюрпризы :D HostAce говорите?

Raistlin:
Я вообще не понимаю, откуда вы взяли 60 метров на процесс апача, когда там 10 метрофф...

Опыт. 10 "метрофф" обычно занимает Apache, который отдает статику. Пора бы это уже знать.

Raistlin
На сайте с 01.02.2010
Offline
247
#24

TiA, Я сказал, что он у меня не падает от хост-трекера. И это. Язычок попридержите, вы в администрировании, по всей видимости, понимаете как я в балете. Апач 10 метрофф и занимает. А остальное - занимает уже ВП, в виде PHP как модуль апача. Так вот. При поступлении, пусть даже 10 запросов к серверу это будет ~ 500 мегабайт памяти под PHP. Больше - вряТли. Ну ладно, уговорили. 600. Остальные 400 метров отдадим под систему. Или вы верите, что запросы поступают жутко одновременно? наивный человек. Там разница 1-5 секунд. Первые 10 придут почти одновременно. Теперь берем среднее время генерации страницы на нормальном двиге под нагрузкой (я молчу про гольный ВП). 3-100 мс. Оо, так это за секунду мы отработаем как минимум 10 таких запросов. Считайте, что там творится с CPU, а, значит, и с памятью.

Raistlin добавил 20.06.2011 в 15:31

И, да. Специально поставил ВПСку на 256 метров оперативки под ксеном. От хост-трекера не упал. Правда, друпал. Развернул из шаблона, под XEN. Думайте, мой дорогой. А вот в правах юзера следует проверить лимиты и убрать их вообще (на CPU, Memory и т.п.). Ну их режет ISPManager каким-то одним ему ведомым способом.

TA
На сайте с 12.06.2009
Offline
116
TiA
#25
Raistlin:
TiA, Я сказал, что он у меня не падает от хост-трекера.

Я читать умею. Вы уже говорили, что у вас не падает некий сайт от host-tracker. Мы тут вроде как WP рассматриваем и не "у вас", а у конкретного человека.

О своих познаниях в области администрирования вы тоже сказали более чем достаточно, чтобы сформировалось вполне объективное мнение.

M
На сайте с 01.12.2009
Offline
235
#26
Вентилятор:
Adminstation, ну даже если OpenVZ. как там может не работать wordpress? если он даже на самом дешёвом хостинге прекрасно работает.

Если я вас правильно понял, у вас Openvz и вы пишите что памяти достаточно, но срабатывает ограничение и лимиты ?, если это так вот что вам скажу.

XEN вам верно советуют, там расчёт памяти идёт другой ( правильный )

--

Умные люди счетают грамотно,и вы будете НЕ приятно удивленны, когда вам RES посчитают + VIRT память, :) пожалуйста не пытайтесь вникнуть в это, просто уходите от этой виртуальности, и спорить нельзя, ИБО так работает Openvz и подсчёт идёт попугаями.

Администратор Linux,Freebsd. построения крупных проектов.
Raistlin
На сайте с 01.02.2010
Offline
247
#27

TiA, Ваши проблемы. Слепых обижать нельзя, извините. Когда поймете, что хост-трекер просто не в состоянии уронить такую ВДСку даже с дефолтными настройками, если внутри все в порядке - приходите, продолжим ликбез. И, кстати. Советую дождаться ответа на вопросы, поставленные мной (а перед этим KM.UA) в теме. Т.е. просто проверкой ограничений пользователя ;).

Ria.neiron
На сайте с 22.03.2009
Offline
352
#28
Вентилятор:
Как может сервер с 1гб памяти не тянуть банальный вордпресс???

Если настроено не оптимально, то может. + зависит от жадности хостера, насколько он ужмет лимиты, чтоб побольше наоверселлить.

Безлимитные серверы 100 Mbps от 29$. (http://megahoster.net/server_nl.php) Нидерланды Безлимитные серверы 1 Gbps от 59$ (http://megahoster.net/server_fr.php) Франция, США Администрирование серверов и перенос сайтов - бесплатно!
P
На сайте с 08.03.2007
Offline
250
#29

Про лимиты OpenVZ ничего неизвестно, так что обсуждать их смысла нет.

На физическом сервере гигабайт, на VPS тоже гигабайт. Сайты отвечают на php запросы 10 секунд. Выводы - лимити OpenVZ прямого отношения конкретно к этой проблеме скорее всего не имеют, имеет отношение только перерасход памяти на физическом сервере или на VPS - то есть своп используется, откуда и задержки. Если VPS потребляет много, что можно видеть в top, то надо уменьшать число процессов апача, то есть MаxClients до какого-то уровня, подбираемого экспериментально. Если на хостинге оверселлинг по памяти, то сделать ничего нельзя кроме постепенного уменьшения MaxClients . И в любом случае ставить nginx первым делом и прописывать в него статику.

В
На сайте с 10.08.2010
Offline
141
#30

Спасибо вам за ответы :)

Продолжение марлезонского балета.

Я решил сменить VPS на другой (fornex.com). Снова залил тот же сайт, и снова запустил host-tracker.com. И снова время ответа оказалось около 10секунд))

Написал тикет. Мне ответили, что это всё из-за того, что хост-трекер отправляет одновременно много запросов из разных точек мира. Соотвтественно, Вёрдпресс создаёт большую нагрузку на проц и озу и сервер тормозит. Но если сайт будет работать в "штатном" режиме, то всё ок.

Как вы считаете, причина в этом?

В принципе с моего компа сайт открывается очень быстро. Сейчас вот товарища попросил загрузить - тоже всё ок.

Но всё равно как-то смущает, что даже на самом дешёвом хостинге при проверке хост-трекером время ответа менее секунды, а на VPS - 10...

1 234 5

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий