Выделенный веб-сервер не справляется с задачей. Помогите решить задачу.

Духовность™

Продвинутый новичок
Выделенный веб-сервер не справляется с задачей. Помогите решить задачу.

Приветствую!

Сделали сайт. В среднем 7 запросов к СУБД на каждое обращение к ресурсу. Время генерации каждой страницы - 0,03 сек. Повесили на выделенный сервер, т.к. владельцы ресурса проводят рекламные компании на одноклассниках и на мейл-ру.

Параметры сервера мне не известны..

Получили вот такое письмо от хостера:

Коллеги,

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

После введения в эксплуатацию интернет-ресурса общая загруженность сервера на дни активного посещения (25-26 октября 2008) составила:
CPU: 25-30%
RAM: 60-65%
Однако, по результатам проверки журналов работы служб хостинг сервера за 25 октября 2008, были выявлены отказы в работе службы веб-сервера:

[Oct 25, 2008 06:19 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 05:43 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 04:57 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 04:32 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 03:36 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 03:05 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 02:50 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 02:34 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 02:09 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 01:58 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 01:33 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 12:57 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 12:37 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 12:27 PM] 'Web Server (Apache)' service stopped.

[Oct 25, 2008 10:30 AM] 'Web Server (Apache)' service stopped.

Восстановление работоспособности службы занимало в среднем от 5 до 10 мин. Анализ журналов выявил, что в эти моменты времени имела место продолжительная высокая активность запросов к вебсерверу. Например, на момент отказа в 16:19 вебсервер обрабатывал:
[18:00]: hits=2449 pages=476 hosts=153

[18:01]: hits=2449 pages=461 hosts=148

[18:02]: hits=2201 pages=460 hosts=140

[18:03]: hits=2045 pages=397 hosts=156

[18:04]: hits=2035 pages=396 hosts=154

[18:05]: hits=2443 pages=481 hosts=170

[18:06]: hits=2500 pages=492 hosts=169

[18:07]: hits=2488 pages=552 hosts=161

[18:08]: hits=2493 pages=471 hosts=167

[18:09]: hits=2368 pages=474 hosts=165

[18:10]: hits=2487 pages=489 hosts=148

[18:11]: hits=2043 pages=417 hosts=156

[18:12]: hits=2610 pages=508 hosts=167

[18:13]: hits=2267 pages=434 hosts=142

[18:14]: hits=1968 pages=415 hosts=124

[18:15]: hits=2766 pages=556 hosts=149

[18:16]: hits=2320 pages=460 hosts=157

[18:17]: hits=2476 pages=483 hosts=153 [not responding]

[18:18]: hits=1838 pages=387 hosts=143 [not responding]

[18:19]: hits=2127 pages=413 hosts=149 [not responding]

[18:20]: hits=2469 pages=473 hosts=168 [not responding]

[18:21]: hits=2278 pages=456 hosts=152 [not responding]

[18:22]: hits=2223 pages=453 hosts=152 [not responding]

[18:23]: hits=1981 pages=381 hosts=140 [not responding]

[18:24]: hits=1498 pages=361 hosts=146 [not responding]

[18:25]: hits=2519 pages=498 hosts=172

Total: hits=59341 pages=11844 hosts=1649

Как видно из вышеприведенного поминутного анализа обращений к хостинг площадке при продолжительной нагрузке более 450 обращений в минуту происходит накопление необработанных запросов, после чего вебсервер прекращает отвечать, и в течение некоторого времени, требуемого для обработки накопленной очереди запросов, восстанавливает свою работоспособность.
Такие "подвисания" могут объясняться тем, что программное обеспечение интернет-ресурса в связке с СУБД не успевает обрабатывать пиковое число запросов, получаемых от вебсервера в течение продолжительного времени. Из итоговых показателей видно, что на 25-ти минутный интервал времени пришлось 11844 просмотров страниц от 1649 уникальных пользователей.
Средняя максимальная нагрузка в час не превысила при этом 28 425 просмотров и 2000 уникальных пользователей.
С учетом того, что при такой нагрузке веб-сервер может начать терять стабильность, можно рассчитать, что средняя максимальная нагрузка (при 30% запаса), гарантирующая стабильную работу ресурса, составит примерно 20 000 просмотров и 1500 пользователей.

Чтобы избежать "зависа" сервера в будущем, рекомендуем следующее:

1 вариант. Оптимизировать ПО ресурса или заменить его на высокопроизводительную систему способную выдерживать высокие нагрузки в течение продолжительного времени (5-10 мин)
или
2 вариант. Планировать рекламную компанию интернет-ресурса так, чтобы число пользователей сайта в час не превышало 1500
Вопрос в том, на что нужно обратить внимание - на оптимизацию ПО (хотя все уже оптимизировано по самое немогу) или планировать рекламную компанию более разумно?

Подскажите, пожалуйста, куда копать? Я первый раз столкнулся с подобной проблемой.
 

antson

Новичок
Партнер клуба
triumvirat
33 страницы в секунду.

точки входа на сайт посетителей с процентами выше 20% ?
процент просмотревших 2ю и более страниц на сайте ?

возможно ли для самых посещаемых (участвующих в рекламной компании) страниц/точек входа ,использовать генерацию статической страницы ?

связка nginx+apache на сервере ?
 

Духовность™

Продвинутый новичок
возможно ли для самых посещаемых (участвующих в рекламной компании) страниц ,использовать генерацию статической страницы ?
ну это значит переделывать всё и кардинально... хотя, возможно, так и придется делать.


связка nginx+apache на сервере ?
nginx - им кто должен заниматься? сисадмин или мне тоже надо в этом участвовать?

33 страницы - это показатель хитов?
 

antson

Новичок
Партнер клуба
404 еще в логах проверь .
и как он у тебя реализован ?
хреновей не бывает чем 404 /index.php?error=404

nginx почитай про него.
в идеале всю графику и статику (css,js) будет отдавать
он сам. почему в идеале ? - я не в курсе как реализованы
превью у тебя. на бакенд апача останется только
обработка пхп скриптов (эстеты сразу напишут про фастСГИ,
но переделывать много придется , если использовал модреврайт).

еасселератор и кверикеше в муське надеюсь использовал и учитывал ?
кеширование в проекте используется ?
 

Wicked

Новичок
в идеале всю графику и статику (css,js) будет отдавать
он сам. почему в идеале ? - я не в курсе как реализованы
превью у тебя. на бакенд апача останется только
обработка пхп скриптов (эстеты сразу напишут про фастСГИ,
но переделывать много придется , если использовал модреврайт).
добавлю, что nginx еще полезен в качестве reverse proxy - чтобы защищать апач+пхп от медленных клиентов.

-~{}~ 06.11.08 14:20:

а бд у вас уже на отдельном сервере?
 

crocodile2u

http://vbolshov.org.ru
Есть демон, который прибивает соединения апача, которые тот сам не прибивает вовремя (вот только не помню, как называется). Это известная проблема, и, может быть, использование такого демона позволит повысить производительность. Ну и 7 запросов на страницу - это может быть накладно, кэшируйте в памяти что только возможно.

30 мс на страницу - не так уж плохо, но есть подозрение, что львиную долю этого времени может съедать соединение с БД и запросы к ней - при грамотной организации кэширования можно при обработке большой части запросов вообще к БД не коннектиться.
 

confguru

ExAdmin
Команда форума
28 425/60 = 467 в минуту - 7 запросов в секунду..
Детская нагрузка какая -то :)

Вы даже ab это можете сделать..

Какое железо на сервере?
 

HraKK

Мудак
Команда форума
admin
не забываем про пики. Может у них реклама построена так что все это не в час, а в 5 мин.
 

Garret

Кто здесь?
>на 25-ти минутный интервал времени пришлось 11844 просмотров страниц от 1649 уникальных пользователей.
Нагрузка не большая, сделай профайлинг в пиках, может проблема с мускулем или еще чем то. Апач должен держать подобное кол-во коннектов даже на слабом железе.
 

antson

Новичок
Партнер клуба
- при VPS 10Mбитс обычно гарантированы ?
или делиться между всему VPS на серваке ?
так как по трафику единственный затык может быть
в том что 3,9Mбитс исходящего трафика приблизительно было
 

antson

Новичок
Партнер клуба
triumvirat
начни еще раз с анализа access.log за пиковую нагрузку
меня смущает соотношение хитов/страниц .
то что я видел должно быть больше 7 однозначно,
может не тот урл что я видел на банерной ротации тогда был ?
 

antson

Новичок
Партнер клуба
рекламная компания . банер наверное был или в бегуне сслыка.
на какой урл зазывали в тот момент народ ?
 

fixxxer

К.О.
Партнер клуба
потому что не надо заказывать администрирование у хостера :) они всегда ставят стандартный тупой комплект apache+modphp

небось куча деток апачей висит, которые занимают кучу ресурсов раздавая медленным клиентам. поставь nginx фронтендом.
 

флоппик

promotor fidei
Команда форума
Партнер клуба
fixxxer, имхо, после
nginx - им кто должен заниматься? сисадмин или мне тоже надо в этом участвовать?
я бы сказал —_«Купите нормального админа» :)
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
а че его покупать?
1 раз настроить за неделю - на год хватит
У меня на VPS с 256 Mb памяти было по 20 соединений одновременно. С трудом, но вытянул.
 
Сверху