Арендую сервер уже год, за всё это время 3 раза были неполадки, из-за которых все сайты на сервере были недоступны каждый раз порядка 12-24 часов.
Нормально, это до 15 минут в год.
ximik:
Ориентировочные убытки за каждую неполадку - порядка 20-30 тысяч рублей.
Вот Вам вариант решения: в договоре оговариваете, что половина потерь в денежном выражении, которые по вине админа, ложатся на этого самого админа (или организацию, предоставляющую услуги администрирования). Как только это договоренность вступает в силу, Ваш сервер начинает работать как часы :). Заодно - хороший тест на профессионализм.
сервер, то в этом случае можно собирать запросы в куски и делать меньше запросов select к БД, т.к. они выполняются быстрее чем много мелких.
Насколько я понимаю, конкретно, в случае mysql это в корне неправильный подход, это ж Вам не оракл. Тут наоборот, сложные запросы нужно дробить на множество мелких и их скармливать mysql-ю - это оптимальнее.
Вы привели слишком мало информации. Где упоминание об ОС?, Где остальные графики, например, распределение памяти и дисковой активности? В конце концов, где конфиг nginx?
Так что упоминание об отпуске телепатов в Вашем случае вполне уместно.
Странно, что в этот форум пишете Вы, а не Ваш админ.
Просмотрел логи нескольких проектов за последний месяц. Этот ip найден в логах только одного сайта, юзер-агент, как отмечено выше. Протокол всегда "HTTP/1.0", что, скорее всего, должно говорить о каком-то сервисе а не о клиентском бровзере.
В моих логах все запросы исключительно к джава-скриптам.
Это не baidu.com - тот честно представляется: "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
atop показал что производительность упирается именно в процессор
~210 хостов в минуту - это не так уж и много:
- задействуйте какой акселератор php - тогда ресурсы процессора не будут тратится на компиляцию.
- подстройте mysql так, что бы ответы брались из кеша - опять-же, ресурсы процессора не будут тратится на выполнение sql-запросов.
- настройте кеширование в nginx - тогда запросы вообще не попадут к бек-энду - нечему будет кушать процессор.
Все вышеперечисленное - тривиальные мероприятия. В конце концов, таки, упретесь в производительность дисковой подсистемы, но тогда список стандартных мероприятий уже будет другим :)
Арендую сервер уже год, за всё это время 3 раза были неполадки, из-за которых все сайты на сервере были недоступны каждый раз порядка 12-24 часов.
Нормально, это до 15 минут в год.
Ориентировочные убытки за каждую неполадку - порядка 20-30 тысяч рублей.
Вот Вам вариант решения: в договоре оговариваете, что половина потерь в денежном выражении, которые по вине админа, ложатся на этого самого админа (или организацию, предоставляющую услуги администрирования). Как только это договоренность вступает в силу, Ваш сервер начинает работать как часы :). Заодно - хороший тест на профессионализм.
сервер, то в этом случае можно собирать запросы в куски и делать меньше запросов select к БД, т.к. они выполняются быстрее чем много мелких.
Насколько я понимаю, конкретно, в случае mysql это в корне неправильный подход, это ж Вам не оракл. Тут наоборот, сложные запросы нужно дробить на множество мелких и их скармливать mysql-ю - это оптимальнее.
Есть ли совет как можно решить проблему с Nginx
Вы привели слишком мало информации. Где упоминание об ОС?, Где остальные графики, например, распределение памяти и дисковой активности? В конце концов, где конфиг nginx?
Так что упоминание об отпуске телепатов в Вашем случае вполне уместно.
Странно, что в этот форум пишете Вы, а не Ваш админ.
Посоветуйте ему почитать на досуге http://sysoev.ru/, http://forum.nginx.org/list.php?21, и, собственно, тему, ради которой все это писалось: http://forum.nginx.org/read.php?21,202591
Просмотрел логи нескольких проектов за последний месяц. Этот ip найден в логах только одного сайта, юзер-агент, как отмечено выше. Протокол всегда "HTTP/1.0", что, скорее всего, должно говорить о каком-то сервисе а не о клиентском бровзере.
В моих логах все запросы исключительно к джава-скриптам.
Это не baidu.com - тот честно представляется: "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
ЗЫ: может быть проблема из-за того что CURRENT или что ядро "ковырялось"
Проблема не в этом, в том, что Вы не читаете что Вам пишут:
Вам же человек ответил:
ipfw divert юзайте
Давайте еще я повторю: стартовать natd мало, ему еще нужно дивертить нужные пакеты.
Покажите на freebsd:
Или пустите меня на машину, сделаю.
сделаю за 5$
Демпингуем? Ну-ну...
atop показал что производительность упирается именно в процессор
~210 хостов в минуту - это не так уж и много:
- задействуйте какой акселератор php - тогда ресурсы процессора не будут тратится на компиляцию.
- подстройте mysql так, что бы ответы брались из кеша - опять-же, ресурсы процессора не будут тратится на выполнение sql-запросов.
- настройте кеширование в nginx - тогда запросы вообще не попадут к бек-энду - нечему будет кушать процессор.
Все вышеперечисленное - тривиальные мероприятия. В конце концов, таки, упретесь в производительность дисковой подсистемы, но тогда список стандартных мероприятий уже будет другим :)
Зачем мне nginx ? или другими словами чем бы он мог мне помочь в такой ситуации :D
Вы бы попробовали, это заняло бы времени меньше, чем написание поста и теоретические рассуждения. От опыта Вы ничего не теряете, а мы выиграем. :)
Друзья, подскажите, что в этом коде нужно поменять, чтобы подобный гемморой не повторялся?
Думаю, менять нужно не тут.
Количество процессов апача может расти, например, по причине недоперенастроегого mysql.
Акселератор PHP настроен и корректно работает?