nginx, fastcgi, uninterruptible sleep
Andrei Nigmatulin
anight at eyelinkmedia.com
Tue Nov 28 18:21:41 MSK 2006
On Tuesday 28 November 2006 18:07, drmarker wrote:
> Привет.
>
> В логах вижу много ошибок обращения 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).
Это может быть интенсивное обращение к локальному диску - можно проверить с
помощью vmstat(8).
> Скрипт ходит в memcached, иногда в /proc, еще реже на диск через
> DBD-SQLite.
>
> Если сделать backlog на listen поменьше (100, вместо 1024) - ошибок
> больше. То есть fastcgi не успевает отрабатывать поступающие запросы
> (хотя на бенчмарках на более слабой машине легко делает 300req/sec с
> concurency 100). Но почему и зачем он висит в "D"? Или это не влияет?
>
> Куда копать?
--
Andrei Nigmatulin
GPG PUB KEY 6449830D
Now I lay me down to sleep(3)
Pray the OS my core to keep
If I die before I wake
Pray the Disk my core to take
More information about the nginx-ru
mailing list