upstream timeouts I can not explain

Руслан Закиров ruz at sports.ru
Wed Jan 11 21:04:13 UTC 2017


On Wed, Jan 11, 2017 at 10:25 PM, Руслан Закиров <ruz at sports.ru> wrote:

>
> On amd64 sendfile() uses mbufs / mbuf clusters.  Try looking into
> "vmstat -z" to see if there are enough mbuf clusters in various
> zones.  Note well tha sendfile() normally blocks on disk, and it
> might simply mean that your disk subsystem is (occasionally)
> overloaded.  Try gstat to see some details.
>
>
> It is goes red periodically and i should look further there.
>

It was disk subsystem. atime updates were enabled (needed them for one
thing), kern.filedelay is 30s, top -mio -S showed syncer jumping up every
30seconds. Re-mounting disk with noatime dropped number of errors down to
<10 per minute from 200+.

At this moment i wonder if turning off sendfile will help. Will nginx use
> aio to serve static files from disk without blocking?
>

Still open question.

Also, sendfile syscall has two flags on bsd to avoid blocking. Can these be
> used to avoid blocks?
>

Looks like BSD 11 has improvements in this area. At least `man` says that
sendfile doesn't block on disk I/O and can return earlier with success.


-- 
Руслан Закиров
Руководитель отдела разработки веб-сервисов
+7(916) 597-92-69, ruz @  <http://www.sports.ru/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20170112/b14cc3ae/attachment.html>


More information about the nginx mailing list