diff options
author | Benoit Foucher <benoit@zeroc.com> | 2015-01-29 13:39:40 +0100 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2015-01-29 13:39:40 +0100 |
commit | fe097c92577b278acfd5855c690579622ff85e4c (patch) | |
tree | 12bc10680a6c0883018a64e8029380d42ada9e04 /java/src | |
parent | SSLv3 is disabled by default in latest JDK updates (diff) | |
download | ice-fe097c92577b278acfd5855c690579622ff85e4c.tar.bz2 ice-fe097c92577b278acfd5855c690579622ff85e4c.tar.xz ice-fe097c92577b278acfd5855c690579622ff85e4c.zip |
Fixed ICE-6158: WS write buffer too big, other minor fixes for Ice Touch
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/Ice/src/main/java/IceInternal/WSTransceiver.java | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/java/src/Ice/src/main/java/IceInternal/WSTransceiver.java b/java/src/Ice/src/main/java/IceInternal/WSTransceiver.java index af164119733..719d78d2300 100644 --- a/java/src/Ice/src/main/java/IceInternal/WSTransceiver.java +++ b/java/src/Ice/src/main/java/IceInternal/WSTransceiver.java @@ -501,13 +501,14 @@ final class WSTransceiver implements Transceiver _resource = resource; _incoming = false; + // + // Use a 16KB write buffer size. We use 16KB for the write + // buffer size because all the data needs to be copied to the + // write buffer for the purpose of masking. A 16KB buffer + // appears to be a good compromise to reduce the number of + // socket write calls and not consume too much memory. // - // For client connections, the sent frame payload must be - // masked. So we copy and send the message buffer data in chuncks - // of data whose size is up to the write buffer size. - // - java.nio.channels.SocketChannel channel = (java.nio.channels.SocketChannel)del.fd(); - _writeBufferSize = Math.max(Network.getSendBufferSize(channel), 1024); + _writeBufferSize = 16 * 1024; // // Write and read buffer size must be large enough to hold the frame header! |