The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Организация высокогонагруженного сервера"
Отправлено mr.roter, 20-Апр-10 00:00 
Приветствую всех!
Занимаюсь проектом с посещаемостью ~25k хостов в сутки.
Столкнулся с проблемой, что текущего железа, видимо, не хватает.
Сейчас стоит 8GB RAM + Intel Xeon E5410 2.33 ГГц.
Из ПО: FreeBSD 7.2, nginx, php-fpm, mysql5.

При генерации страниц при нагрузках наблюдаю следующая картину: запросы к БД занимают к примеру 300ms, а страница вся генерится 4-5sec.
Когда нагрузки толком нет (100-200 юзеров онлайн), то запросы к примеру занимают 100-150ms, а общее время генерации страницы 300-400ms.

Сначала оптимизировал запросы, таблички. Раньше в top на первом месте при нагрузках всегда висел mysqld, сейчас (после оптимизаций БД) mysqld далеко не на первом месте, а на первом месте и вообще в топе процессы php-fpm.

SHOW PROCESSLIST почти все время пустой, 1-2 запроса выполняются.

в top примерно следующая ситуация:
last pid: 87333;  load averages:  9.09,  9.54, 9.69                                
192 processes: 16 running, 174 sleeping, 2 stopped
CPU 0: 89.8% user,  0.0% nice, 10.2% system,  0.0% interrupt,  0.0% idle
CPU 1: 91.0% user,  0.0% nice,  5.6% system,  0.0% interrupt,  3.4% idle
CPU 2: 94.0% user,  0.0% nice,  4.9% system,  0.0% interrupt,  1.1% idle
CPU 3: 94.0% user,  0.0% nice,  3.4% system,  0.0% interrupt,  2.6% idle
Mem: 1053M Active, 5421M Inact, 740M Wired, 235M Cache, 399M Buf, 439M Free
Swap: 4096M Total, 528K Used, 4095M Free
Как я понимаю, все упирается в процессор.
1. Насколько сильно может помочь установка второго такого же процессора в сервер?

Вот еще статс nginx'а:
Active connections: 921
server accepts handled requests
15814759 15789148 154277883
Reading: 2 Writing: 60 Waiting: 859  


Собственно, собираюсь ставить второй сервер для некоторых других нужд и думаю разгрузить основной сервер, перенеся на второй всю статику.
2. Или может лучше на втором оставить php-fpm только, раз он столько потребляет?
3. Или может на него (второй сервер) лучше вынести mysql?
4. А может железо такого за глаза должно хватать для веб-портала средних размеров, просто код кривой?
5. Или может настройки ПО кривые какие-то?

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

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру