On Thu, Feb 22, 2007 at 03:16:23PM +0300, Andrey Ignatov wrote:
> 22.02.07, Sergey Skvortsov<skv@xxxxxxxxx>:
> >On 22.02.2007 11:24, Andrew Velikoredchanin wrote:
> >>>
> >>>>> После увелечения кол-ва воркеров. они стали висеть в состоянии sfbufa,
> >>>>> Этих буферов у нас было 3 тысяи и текущее их кол-во всегда было равно
> >>>>> пику и максимуму. мы увеличили до 65 тысяч.. и сейчас сервер работает
> >>
> >> А каким образом вы увеличили к-во этих буферов?
> >
> >man sendfile
> >/TUNING
>
> а кто-нибудь сталкивался с такой проблемой:
> #>grep nsfbufs /boot/loader.conf
> kern.ipc.nsfbufs=32768
>
> но после перезагрузки ничего не меняется:
> #>sysctl kern.ipc.nsfbufs
> kern.ipc.nsfbufs: 0
>
> #>uname -srm
> FreeBSD 6.2-STABLE amd64
>
> Если я правильно понимаю при нулевом kern.ipc.nsfbufs sendfile не
> может использоваться ?
> #>netstat -m
> 3275/3850/7125 mbufs in use (current/cache/total)
> 1882/3532/5414/32768 mbuf clusters in use (current/cache/total/max)
> 996/2517 mbuf+clusters out of packet secondary zone in use (current/cache)
> 0/0/0/0 4k (page size) jumbo clusters in use (current/cache/total/max)
> 0/0/0/0 9k jumbo clusters in use (current/cache/total/max)
> 0/0/0/0 16k jumbo clusters in use (current/cache/total/max)
> 4582K/8026K/12609K bytes allocated to network (current/cache/total)
> 0/0/0 requests for mbufs denied (mbufs/clusters/mbuf+clusters)
> 0/0/0 requests for jumbo clusters denied (4k/9k/16k)
> 0/0/0 sfbufs in use (current/peak/max)
> 0 requests for sfbufs denied
> 0 requests for sfbufs delayed
> 18980990 requests for I/O initiated by sendfile
> 13332 calls to protocol drain routines
>
> Проверял на 3-ех amd64 FreeBSD 6.2 серверах - такая проблема везде, на
> i386 такого не наблюдается. Гугл выдает, что такое встречается у
> многих на amd64, но как решить проблему не нашел. Возможно кто-то
> знает решение ?
>
> На сервере этом крутится nginx (sendfile on;). Он отдает мелкую
> (1-30КБ) статику + проксирует запросы к apache-бекендам. Исходящий
> трафик порядка 12-20 Mbps.
На amd64 kern.ipc.nsfbufs не используются, там это сделано по-другому.
--
Игорь Сысоев
http://sysoev.ru