io-buffer-size
Syntax
io-buffer-size = number_of_bytes Description
Positive integer value indicating the buffer size, in bytes, for low-level reads from and writes to a junction.
Options
- number_of_bytes
-
Positive integer value indicating the buffer size, in bytes, for low-level reads from and writes to a junction.
The minimum value is 1. WebSEAL does not impose a maximum value.
A very small value (for instance, 10 bytes) can hurt performance by causing very frequent calls to the low-level read/write APIs. Up to a certain point, larger values improve performance because they correspondingly reduce the calls to the low-level I/O functions.
However, the low-level I/O functions may have their own internal buffers, such as the TCP send and receive buffers. Once io-buffer-size exceeds the size of those buffers (which are typically not large), there is no longer any performance improvement at all because those functions only read part of the buffer at the time.
Reasonable values for io-buffer-size range between 1 kB and 8 kB. Values smaller than this range causes calling the low-level I/O functions too frequently. Values larger than this range wastes memory. A 2 MB I/O buffer size uses 4 MB for each worker thread communicating with the junctioned server, since there is both an input and output buffer.
Usage
This stanza entry is required.
Default value
4096
Example
io-buffer-size = 4096