URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 7305
[ Назад ]

Исходное сообщение
"Apache - кол-во одновременных ответов от сервера"

Отправлено Arti2008 , 20-Июл-11 04:27 
недавно столкнулась с таким странным эффектом:
апач одновременно отдает не более 6-ти ответов от сервера.

Каак проявляется:
допустим есть AJAX скрипт, который отправляет сразу 20 ассинхронных запросов на один и тот же скрипт, но с разными данными.
При этом запросы корректно отправляются в одно и то же время, но вот ответы от сервера получаются "порциями" по 6 штук. Для теста и наглядности в скрипте, к которому обращаемсся стоит sleep(10) (ждем 10 секунд).

так вот первые 6 запросов выполнятся (будет получен ответ от сервера) через 10 секунд, следующие 6 через 20 секунд и тп.

Т.е. ощущение, что они каким-то образом вставют в "очередь"

из-за чего может быть такой эффект и как его устранить?


Содержание

Сообщения в этом обсуждении
"Apache - кол-во одновременных ответов от сервера"
Отправлено Etch , 20-Июл-11 08:22 
А на сколько процессов и потоков апач настроен?



"Apache - кол-во одновременных ответов от сервера"
Отправлено Arti2008 , 20-Июл-11 14:52 
> А на сколько процессов и потоков апач настроен?

стоит mpm-itk

    StartServers          5
    MinSpareServers      10
    MaxSpareServers      50
    MaxClients          250
    MaxRequestsPerChild   0


по таймаутам:
Timeout 100
KeepAlive On
MaxKeepAliveRequests 4000
KeepAliveTimeout 100


"Apache - кол-во одновременных ответов от сервера"
Отправлено Arti2008 , 21-Июл-11 23:01 
у кого-нибудь есть идеи?

"Apache - кол-во одновременных ответов от сервера"
Отправлено Etch , 23-Июл-11 07:22 
> у кого-нибудь есть идеи?

Если реально запущено тоже более 6 процессов апача, то возможно фаервол блокирует большее кол-во одновременных коннектов (или фронтенд, или прокси). Больше идей нет.


"Apache - кол-во одновременных ответов от сервера"
Отправлено Arti2008 , 24-Июл-11 17:50 
>> у кого-нибудь есть идеи?
> Если реально запущено тоже более 6 процессов апача, то возможно фаервол блокирует
> большее кол-во одновременных коннектов (или фронтенд, или прокси). Больше идей нет.

нет, процессов ощутимо больше


"Apache - кол-во одновременных ответов от сервера"
Отправлено Andrey Mitrofanov , 25-Июл-11 10:04 
>> Если реально запущено тоже более 6 процессов апача, то возможно фаервол блокирует
> нет, процессов ощутимо больше

На чём/на ком скрипт? Может, fastcgi какой запущен в к-ве только 6 штук?


"Apache - кол-во одновременных ответов от сервера"
Отправлено Arti2008 , 25-Июл-11 17:01 
>>> Если реально запущено тоже более 6 процессов апача, то возможно фаервол блокирует
>> нет, процессов ощутимо больше
> На чём/на ком скрипт? Может, fastcgi какой запущен в к-ве только 6
> штук?

нет, mod_php


"Apache - кол-во одновременных ответов от сервера"
Отправлено Arti2008 , 25-Июл-11 21:03 
>> у кого-нибудь есть идеи?
> Если реально запущено тоже более 6 процессов апача, то возможно фаервол блокирует
> большее кол-во одновременных коннектов (или фронтенд, или прокси). Больше идей нет.

прокси нет, апач крутится без nginx
файрвол стоит apf + там 80 порт стоит как порт для мин. задержек и макс пропускаемости
но там вроде никаких подобных настроек нет.
пробовала его отключать - отличий нет.


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


"Apache - кол-во одновременных ответов от сервера"
Отправлено Etch , 26-Июл-11 01:55 
> вообще очень странно конечно, почему такая "очередь" создается, при этом это именно
> в рамках одной сессии пользователя, т.е. другие коннекты с других сайтов
> на этом же сервере, будут нормально проходить в момент ожидания процессов
> по этому соединению.

А сами запросы чем создаются? Если браузером, то это в нём может быть такое ограничение (на один сайт). Или в самом скрипте (мало ли что там закодено).


"Apache - кол-во одновременных ответов от сервера"
Отправлено Arti2008 , 26-Июл-11 07:22 
>> вообще очень странно конечно, почему такая "очередь" создается, при этом это именно
>> в рамках одной сессии пользователя, т.е. другие коннекты с других сайтов
>> на этом же сервере, будут нормально проходить в момент ожидания процессов
>> по этому соединению.
> А сами запросы чем создаются? Если браузером, то это в нём может
> быть такое ограничение (на один сайт). Или в самом скрипте (мало
> ли что там закодено).

в скрипте точно нет (тестировалось на пустом скрипте с sleep(10); для наглядности), в броузере - тоже нет - последние броузеры FF, Ie.



"Apache - кол-во одновременных ответов от сервера"
Отправлено Etch , 27-Июл-11 14:34 
>> А сами запросы чем создаются? Если браузером, то это в нём может
>> быть такое ограничение (на один сайт). Или в самом скрипте (мало
>> ли что там закодено).
> в скрипте точно нет (тестировалось на пустом скрипте с sleep(10); для наглядности),
> в броузере - тоже нет - последние броузеры FF, Ie.

В браузерах, как раз, обязательно стоят такие ограничения. В фф надо зайти на страницу about:config и смотреть опции, начинающиеся с 'network.http.max'. У меня в фф 3.6 как раз по умолчанию стоит:
network.http.max-persistent-connections-per-server = 6