sendfile не включается почему-то
Igor Sysoev
is at rambler-co.ru
Sun Feb 24 19:55:03 MSK 2008
On Sun, Feb 24, 2008 at 12:43:18PM +0300, Михаил Монашёв wrote:
> Здравствуйте Игорь,
>
> >> sendfile почему-то не работает:
> >>
> >> sysctl -a | grep sfbuf
> >> kern.ipc.nsfbufsused: 0
> >> kern.ipc.nsfbufspeak: 0
> >> kern.ipc.nsfbufs: 0
> >>
> >> netstat -m
> >> 4167/4158/8325 mbufs in use (current/cache/total)
> >> 369/1985/2354/65536 mbuf clusters in use (current/cache/total/max)
> >> 369/1935 mbuf+clusters out of packet secondary zone in use (current/cache)
> >> 0/35/35/16896 4k (page size) jumbo clusters in use (current/cache/total/max)
> >> 0/0/0/8448 9k jumbo clusters in use (current/cache/total/max)
> >> 0/0/0/4224 16k jumbo clusters in use (current/cache/total/max)
> >> 1779K/5149K/6929K 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
> >> 32775 requests for I/O initiated by sendfile
>
> IS> Работает.
>
> >> 0 calls to protocol drain routines
> >>
> >> FreeBSD 7.0-PRERELEASE
> >>
> >> Вопрос: почему не работает sendfile?
>
> IS> На amd64 sfbufs не используются и там просто нет этих лимитов.
>
> А какие буферы он тогда использует?
sfbufs - это не буфера, а адреса в ядерном адресном пространстве.
В 32-битной архитектуре адресное пространство ограничено, поэтому
приходится явно описывать, чем нужно жертвовать.
В 64-битной архитектуре адресное пространство огромное и пока таких
проблем нет (похожая ситуация была в Линуксе, когда машины имели до
1G физической памяти, а потом придумали HIGHMEM).
> И не ясно вот что: почему LA вырос в разы после того, как я добавил в
> /boot/loader.conf и /etc/sysctl.conf то, что там сейчас есть?
А вот это
worker_processes 30;
было каким ?
--
Игорь Сысоев
http://sysoev.ru
More information about the nginx-ru
mailing list