Hello!

On Tue, Jun 20, 2017 at 10:31:52AM -0400, Ilya Evseev wrote:

> >
> > В данном случае хороший ответ на этот вопрос не прослеживается,
> > так как автотюнинг буферов сейчас во всех популярных операционных
> > системах есть, в том числе на линуксе.
> >
> 
> Автотюнинг буферов - это что именно?
> 
> Есть sysctl net.ipv4.tcp_wmem с тремя значениями:
> минимально разрешенное, по умолчанию, максимально разрешенное.
> 
> Но устанавливать значение, отличное от дефолтного, всё равно должен
> пользовательский
> процесс через setsockopt(SO_SNDBUF), ядро его никогда не пытается менять
> автоматически.

Нет. (c) Farid Vagapov

tcp_wmem - vector of 3 INTEGERs: min, default, max
        min: Amount of memory reserved for send buffers for TCP sockets.
        Each TCP socket has rights to use it due to fact of its birth.
        Default: 1 page

        default: initial size of send buffer used by TCP sockets.  This
        value overrides net.core.wmem_default used by other protocols.
        It is usually lower than net.core.wmem_default.
        Default: 16K

        max: Maximal amount of memory allowed for automatically tuned
        send buffers for TCP sockets. This value does not override
        net.core.wmem_max.  Calling setsockopt() with SO_SNDBUF disables
        automatic tuning of that socket's send buffer size, in which case
        this value is ignored.
        Default: between 64K and 4MB, depending on RAM size.

(https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt)

-- 
Maxim Dounin
http://nginx.org/
_______________________________________________
nginx-ru mailing list
[email protected]
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить