nginx, fastcgi, uninterruptible sleep

drmarker drmarker at gmail.com
Tue Nov 28 18:07:29 MSK 2006


Привет.

В логах вижу много ошибок обращения nginx к fastcgi на unix-socket.

Типа таких:

upstream timed out (110: Connection timed out) while reading response
header from upstream, upstream: "fastcgi://unix:/tmp/fcgi.sock:"

fastcgi - локальный standalone server, через FCGI.pm, но не суть.

Судя по top, скрипт большую часть времени висит в "D" (uninterruptible sleep).

Скрипт ходит в memcached, иногда в /proc, еще реже на диск через DBD-SQLite.

Если сделать backlog на listen поменьше (100, вместо 1024) - ошибок
больше. То есть fastcgi не успевает отрабатывать поступающие запросы
(хотя на бенчмарках на более слабой машине легко делает 300req/sec с
concurency 100). Но почему и зачем он висит в "D"? Или это не влияет?

Куда копать?


More information about the nginx-ru mailing list