Re: poll() timeout в PHP-FPM при получении запросов от Nginx
On Tue, Nov 19, 2013 at 11:58:33PM +0300, Bogdan wrote:
> Т.е. непонятно по какой причине poll() зависает на 5 секунд блокируя работу
> интерпретатора.
Скорее всего, по той причине, что никаких данных по сети не приходит.
> Вероятность проблемы может быть весьма высокой, например
> 1/60, что при условии получения 1000-1500 запросов в секунду очень
> болезненно.
> Подскажите, куда дальше копать?
Убедиться, что данных действительно нет, если в этом сомневаетесь.
Т.е. tcpdump в руки и искать эту коннекцию.
> Может быть где-то в /proc или /sys есть общесистемный счётчик tcp
> retransmit для каждого интерфейса либо IP, чтобы проверить версию с
> потерями пакетов во внутренней сети?
Есть общий счётчик: netstat -s (ака /proc/net/netstat).
При чём тут счётчик ретрасмиссий -- непонятно: речь же о входящих пакетах,
а не исходящих. Все счётчики интерфейса показывает ip -s link dev...
Для проверки версии о потерях пакетов достаточно сравнить счётчики
интерфейсов клиента и сервера. Вообще, нормальные свитчи тоже умеют
вести статистику по интерфейсам, а также считать дропнутые пакетики.
--
Eugene Berdnikov
Reply to: