You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Paul Gale (JIRA)" <ji...@apache.org> on 2016/02/02 21:12:39 UTC

[jira] [Updated] (AMQ-6153) Toggle the TCP transport's ability to size a socket's read and write buffer

     [ https://issues.apache.org/jira/browse/AMQ-6153?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Gale updated AMQ-6153:
---------------------------
    Description: 
This improvement only applies when running ActiveMQ on Linux.

At the moment the TCP transport sets the size of the accepted socket's read and write buffer (64k by default). They can be given different sizes using the relevant transport connector options.

However, on Linux once a socket has had either its read or write buffer size explicitly set the kernel will not automatically tune its size at run-time.

Therefore add a new flag to instruct the TCP transport connector to not set the size of the socket's buffers. Said flag should default to false for backward compatibility.

If the flag is true the TCP transport will ignore any configured size of the socket's buffers. Perhaps print a warning? This will allow the kernel to auto-tune the socket's buffer at run-time according to the kernel parameters net.ipv4.tcp_rmem and net.ipv4.tcp_wmem.

Flag name suggestion: disableSocketBufferSizing

  was:
This improvement only applies when running ActiveMQ on Linux.

At the moment the TCP transport sets the size the accepted socket's read and write buffer (64k by default). They can be given different sizes using the relevant transport connector options.

However, on Linux once a socket has had either its read or write buffer size explicitly set the kernel will not automatically tune its size at run-time.

Therefore add a new flag to instruct the TCP transport connector to instruct the transport not to set the size of the read and write socket buffers (default to false for backward compatibility).

Instead the kernel will auto-tune their respective sizes at run-time according to the kernel parameters net.ipv4.tcp_rmem and net.ipv4.tcp_wmem.

Flag name suggestion: disableSocketBufferSizing


> Toggle the TCP transport's ability to size a socket's read and write buffer
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-6153
>                 URL: https://issues.apache.org/jira/browse/AMQ-6153
>             Project: ActiveMQ
>          Issue Type: Improvement
>          Components: Transport
>    Affects Versions: 5.12.1, 5.13.0
>         Environment: Linux
>            Reporter: Paul Gale
>            Priority: Minor
>             Fix For: 5.13.1
>
>
> This improvement only applies when running ActiveMQ on Linux.
> At the moment the TCP transport sets the size of the accepted socket's read and write buffer (64k by default). They can be given different sizes using the relevant transport connector options.
> However, on Linux once a socket has had either its read or write buffer size explicitly set the kernel will not automatically tune its size at run-time.
> Therefore add a new flag to instruct the TCP transport connector to not set the size of the socket's buffers. Said flag should default to false for backward compatibility.
> If the flag is true the TCP transport will ignore any configured size of the socket's buffers. Perhaps print a warning? This will allow the kernel to auto-tune the socket's buffer at run-time according to the kernel parameters net.ipv4.tcp_rmem and net.ipv4.tcp_wmem.
> Flag name suggestion: disableSocketBufferSizing



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)