Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
(60: Operation timed out) while reading response header from upstream
- To: nginx-ru@xxxxxxxxx
- Subject: (60: Operation timed out) while reading response header from upstream
- From: "urri" <nginx-forum@xxxxxxxx>
- Date: Mon, 08 Aug 2011 12:59:59 -0400
- Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mickey.jlkhosting.com; s=x; h=Date:Sender:From:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=+6fUvgnnz4zrK5a4X5TPeuzEYR10FmsbPjyZ6LuVeeQ=; b=q6HyboHg9TQaXLY3z6XCiooNeIT/9yiUKBd3ukhOF7WsxkKfU1atNnXcMpVKu0wtAq5F41SEEpMTMsdd1tKl5Nv6WAdi+hid72WTRrxZt84jdNGBOeLAs/fBNituYghO;
День добрый!
Есть сервер, обрабатывающий около 2К
запросов в секунду. Запросы идут на nginx
и передаются на backend. Раньше в роли
бэкенда был php скрипт, запускаемый
через fastcgi. В связи с возрастающей на
сервер нагрузкой был реализован демон
на С, использующий libevent для работы с
сетью.
После смены бэкенда на демона в error.log
переодически сыплются ошибки:
2011/08/08 18:48:20 [error] 30456#0: *17869889685 upstream timed out
(60: Operation timed out) while reading response header from upstream,
client: XX.XX.XX.XX, server: someserver.com, request: "GET
/query/xxx/yyy/ HTTP/1.1", upstream:
"http://127.0.0.1:8888/query/xxx/yyy/", host: "someserver.com",
referrer: "http://somereferrer.com/"
Выставление бОльших таймаутов не
помогло решить проблему.
Возможно проблема где-то в бэкенде, но:
1) Запросы, отправляемые из браузера,
через nginx или напрямую на backend,
обрабатываются за доли секунды.
2) Внутренние очереди сообщений демона
(через которые проходят запросы на
обрабоку между сетевым потоком и
потоком воркером и результаты на
отправку) не превышают пары десятков
ожидающих.
3) Очередь на коннект:
%netstat -Lan
Current listen queue sizes (qlen/incqlen/maxqlen)
Proto Listen Local Address
tcp4 320/0/2048 127.0.0.1.8888 --- демон
tcp4 0/0/4096 *.80 --- nginx
4) Активные соединения по демону:
%netstat -tn | grep 8888 | wc -l
16836
%netstat -tn | grep 8888 | grep -v "TIME_WAIT" | wc -l
1203
ОС: FreeBSD 7.2
nginx: nginx version: nginx/1.0.0
Подскажите, как диагностировать
проблему?
Спасибо!
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,213520,213520#msg-213520
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|