<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jan 11, 2017 at 10:25 PM, Руслан Закиров <span dir="ltr"><<a href="mailto:ruz@sports.ru" target="_blank">ruz@sports.ru</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="gmail_extra"><div class="gmail_quote"><div><div class="gmail-"><blockquote class="gmail-m_4527858068332702471quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail-m_4527858068332702471elided-text"><br>
</div>On amd64 sendfile() uses mbufs / mbuf clusters.  Try looking into<br>
"vmstat -z" to see if there are enough mbuf clusters in various<br>
zones.  Note well tha sendfile() normally blocks on disk, and it<br>
might simply mean that your disk subsystem is (occasionally)<br>
overloaded.  Try gstat to see some details.<br></blockquote></div></div></div></div></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail-m_4527858068332702471quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"></blockquote></div></div></div><div dir="auto">It is goes red periodically and i should look further there.</div></blockquote><div><br></div><div>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+. </div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">At this moment i wonder if turning off sendfile will help. Will nginx use aio to serve static files from disk without blocking?</div></blockquote><div><br></div><div>Still open question.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">Also, sendfile syscall has two flags on bsd to avoid blocking. Can these be used to avoid blocks?</div></blockquote></div><br>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.<br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div>Руслан Закиров</div><div>Руководитель отдела разработки веб-сервисов</div><div><span>+7(916) 597-92-69</span>, <span>ruz @ <a href="http://www.sports.ru/" target="_blank"><img src="http://farm7.static.flickr.com/6235/6210250811_19a888dbba_o.jpg" width="43" height="14" style="vertical-align: bottom; margin-right: 0px;"></a></span></div></div></div>
</div></div>