- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Добрый день, уважаемые!
До вчерашнего дня на ВДСе стоял Аппач - естественно, всё тупило и жрало много памяти (вплоть до автокилла :)).
Вчера поставили связку Апач+Нжинкс - всё начало заметно шустрее бегать, средняя загрузка проца 10-20%, памяти около 500К (из гига).
Но начала изредка вылазить ошибка 504 Gateway Time-out :fire:
На сколько я понял, это Нжинкс не успевает получать от вышестоящего сервера (Аппача) динамику.
Мне саппорт благодаря пинку, объяснил дословно "таймаут нжинкса" :)
Только вот подскажите, где его вписать/отредактировать в nginx.conf - какие параметры вписать и какое хоть примерное значение...(я уже замучился лазить по http://sysoev.ru/nginx)
Спасибо заранее.
http://sysoev.ru/nginx/docs/http/ngx_http_proxy_module.html#proxy_read_timeout
http://sysoev.ru/nginx/docs/http/ngx_http_proxy_module.html#proxy_send_timeout
http://sysoev.ru/nginx/docs/http/ngx_http_proxy_module.html#proxy_connect_timeout
Т.е. можете прописать глобально, прямо в разделе
http {
proxy_read_timeout 60;
proxy_send_timeout 60;
proxy_connect_timeout 60;
}
Соответственно таймаут чтения, посылки запроса и соединения.
60 - это значение "по умолчанию".
скорее всего это
syntax: proxy_connect_timeout время
default: proxy_connect_timeout 60
context: http, server, location
Директива задаёт таймаут для соединения с проксированным сервером. Необходимо иметь в виду, что этот таймаут не может быть больше 75 секунд.
И скорее всего это не поможет. Тут прикол в том, что apach не успевает обработать запрос. Причина может быть в том, что физически сервер не успевает или все процессы папче висят в ожидании данных (тогда надо MaxClients у apache увеличить).
Himiko, спасибо за грамотную консультацию - пока поставил 120, посмотрим чего будет.
masterweb.spb,
И скорее всего это не поможет. Тут прикол в том, что apach не успевает обработать запрос. Причина может быть в том, что физически сервер не успевает или все процессы папче висят в ожидании данных (тогда надо MaxClients у apache увеличить).
- я об этом тоже думал. Сейчас стоит:
prefork.c:
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 4000
worker.c:
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
server-status смотреть нужно. По параметрам не определишь, сколько ему надо.
объясните, где server-status искать...
вобщемто, вот вам картинка сервака:
ага, мой любимый линукс, который показывает время процессора в состоянии waiting. В момент получения статистики не справлялся диск. Полезно посмотреть для apache server-status посмотреть, тогда все станет понятнее. На мой взгляд пора заняться выявлением узких мест в приложении (диск, процессор, память), и одним таймаутом уже не отделаться.
Полезно посмотреть для apache server-status посмотреть, тогда все станет понятнее.
как его смотреть?
http://httpd.apache.org/docs/2.0/mod/mod_status.html
Загрузить нужный модуль, настроить его. Дальше заходим на нужный URL и смотрим, что делают процессы апаче.
http://httpd.apache.org/docs/2.0/mod/mod_status.html
Загрузить нужный модуль, настроить его. Дальше заходим на нужный URL и смотрим, что делают процессы апаче.
Как правило mod_status есть сразу.
Ищите в конфигурации Apache строки:
#<Location /server-status>
# SetHandler server-status
# Order allow,deny
# Deny from all
#</Location>
#ExtendedStatus On
Снимайте комментарий, т.е. удаляйте знаки "#" и немного подправьте:
<Location /server-status>
SetHandler server-status
Order allow,deny
Allow from all
</Location>
ExtendedStatus On
После этого перезапустите Apache.
Ну и смотрите статистику по http://ip-адрес/server-status
Не слишком ли?