- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте, друзья.
Пишу эту тему в надежде получить хороший совет от специалистов по выбору хостера, конфигурации сервера и правильной настройке системы.
Суть такая:
Мы сделали приложения для соц. сети ВКонтакте (позже планировали размещение и в других соц. Сетях)
Нагрузка изначально планировалась немалая, т.к. приложение рассчитано на обработку большого количества запросов от пользователей в единицу времени, но мы не думали, что приложение будет так резко набирать обороты, поэтому оказались неготовыми к данной ситуации.
Сейчас вопрос развития приложения уперся в оптимизацию нагрузки, т.к. при большем количестве участников сайт лагает или просто-напросто падает.
В качестве хостинга выбор упал на vds 64.com (раньше работали с ними, поэтому и решили попробовать хоститься тут)
Выбрали гибридный VDS сервер:
8 ядерный Opteron (2400/2600) 2.2 Ghz
16гб. RAM
120 гб HDD
Это почти максимальная конфигурация гибридного сервера (еще можно поставить 12 ядерный проц. и оперативку до 16 гигов).
В качестве софта:
CentOS 6.3
Nginx + php-fpm
MySQL 5.5.41-37.0 - Percona Server (GPL), Release 37.0, Revision 727
После долгих копаний в конфигах удалось добиться нормальной работы приложения, НО есть одна проблема – непонятно из-за чего в течение дня могут возникать «скачки», во время которых приложение подвисает. В панеле SimpleHM хостера есть раздел «Графики ресурсов», если посмотреть на этот график, то можно увидеть скачки процессора. Причем «прыгает» CPU-Sys
При этом, если смотреть по команде top - процессор особо не нагружен (15-40%) и свободной оперативки вполне достаточно (около 6 гигов постоянно).
Как мы поняли, раньше такая проблема была из-за большого количества соединений c TIME_WAIT при использовании nginx + apache, а после перехода на nginx + php-fpm с TIME_WAIT все стало нормально, но подвисания остались. Судя по логам проблема в настройках php-fpm
Часто видим такое:
[11-Mar-2015 15:24:12] WARNING: [pool www] server reached pm.max_children setting (600), consider raising it
[11-Mar-2015 17:09:05] WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 0 idle, and 70 total children
Я уже поставил pm.max_children =600, но сколько не ставь, этого значения не хвататет (изначально вообще было 100)
В связи с вышесказанным есть несколько глобальных вопросов:
1) Что Вы думаете о VDS вообще? Как на нем распределяются ресурсы, не может ли быть подвоха со стороны хостера? Нормальное ли это решение для проекта, или нужно смотреть в сторону выделенного сервера?
2) Есть ли у Вас опыт работы именно с VDS 64.com – что можете сказать? Или посоветуйте другого хостера.
3) Хотелось бы получить рекомендации по настройкам серверного софта. В частности интересуют параметры nginx и php-fmp. Ну и общие рекомендации по настройке сервера.
Понимаю, что «вслепую» сказать что-то дельное будет тяжело – готов предоставить дополнительную информацию (конфиги и прочее). Также готов материально отблагодарить человека, давшего хороший совет.
1. Нет, это плохое решение. Вам нужно горизонтальное масштабирование.
3. Советую найти 20% кода и запросов, которые создают 80% нагрузки. Могу помочь за материальное вознаграждение.
1. Нет, это плохое решение. Вам нужно горизонтальное масштабирование.
3. Советую найти 20% кода и запросов, которые создают 80% нагрузки. Могу помочь за материальное вознаграждение.
Помощь за материальное любое вознаграждение — в другом разделе. Не забываем об этом.
А почему не полноценный сервер?! Зачем VDS с такими параметрами? Ну это так просто вопрос.
Проверьте запросы к mysql в реальном режиме. Что она выполняет? Что выполняют эти запросы с TIME_WAIT в логах?
Проблема у вас скорее всего в вашем проекте, пока мы не знаем, что у вас там внутри. Без этого изучения никакие настройки не помогут.
Возьмите выделенный сервер на SSD. Объем позволяет.
Кроме изменения max_children возможно необходимо также менять и start_servers, min/max_spare_servers.
А почему не полноценный сервер?! Зачем VDS с такими параметрами? Ну это так просто вопрос.
Выделенный сервер придется администрировать полностью самим, никакой поддержки со стороны хостера. А мы не особо сильны в вопросах администрирования
Выделенный сервер придется администрировать полностью самим, никакой поддержки со стороны хостера. А мы не особо сильны в вопросах администрирования
А вам кто-то на халяву VDS администрирует? Или что вы имеете ввиду под администрированием? Вот вижу никто нагрузку не оптимизирует на сервере, а это могли бы делать администраторы.
Выделенный сервер придется администрировать полностью самим, никакой поддержки со стороны хостера. А мы не особо сильны в вопросах администрирования
Вы неправы!
Как выделенный так и виртуальный сервер может быть с администрированием или без.
Судя по логам проблема в настройках php-fpm
А покажите конфига php-fpm и nginx. Сколько у вас онлайн пользователей, сколько запросов в секунду?
А вам кто-то на халяву VDS администрирует? Или что вы имеете ввиду под администрированием? Вот вижу никто нагрузку не оптимизирует на сервере, а это могли бы делать администраторы.
Всё делаем сами, время от времени приглашаем специалистов, но на постонке администратора нету.
Всё-таки служба поддержки VDS-хостера как-никак но помогает.
Вы неправы!
Как выделенный так и виртуальный сервер может быть с администрированием или без.
Можно пример хорошего хостера выделенного сервера с поддержкой?
А покажите конфига php-fpm и nginx. Сколько у вас онлайн пользователей, сколько запросов в секунду?
Онлайн доходит до 1500. Но это только начало, не можем пока дальше развиваться, пока сервер в таком состоянии.
[ATTACH]141339[/ATTACH]
Вы просто путаете понятия.
Я лично рекомендую вот этих парней: /ru/forum/495861