You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2015/09/07 15:52:57 UTC
svn commit: r1701625 - in /qpid/java/trunk:
broker-core/src/main/java/org/apache/qpid/server/model/
broker-core/src/main/java/org/apache/qpid/server/model/adapter/
broker-core/src/main/java/org/apache/qpid/server/transport/ test-profiles/
Author: orudyy
Date: Mon Sep 7 13:52:56 2015
New Revision: 1701625
URL: http://svn.apache.org/r1701625
Log:
QPID-6727: [Java Broker] change default network buffer size to 256kB and move QpidByteBuffer pool creation to BrokerAdapter
work by Lorenz Quack <qu...@gmail.com> and Alex Rudyy <or...@apache.org>
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionPlainDelegate.java
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java
qpid/java/trunk/test-profiles/Java010Excludes
Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java?rev=1701625&r1=1701624&r2=1701625&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java Mon Sep 7 13:52:56 2015
@@ -62,17 +62,10 @@ public interface Broker<X extends Broker
String QPID_JMX_PORT = "qpid.jmx_port";
String NETWORK_BUFFER_SIZE = "qpid.broker.networkBufferSize";
- // network buffer should at least hold a SSL/TLS frame which consists of
- // 5 bytes SSLv3 record header
- // 256 bytes of IV
- // 16384 bytes (2^14 bytes) of data
- // 256 bytes for block cipher padding
- // 20 bytes for trailer SHA1 hash size
- // 16384 bytes (2^14 bytes) of extra for large data packets
- // 33305 bytes in TOTAL
- int MINIMUM_NETWORK_BUFFER_SIZE = 33305;
+ // network buffer should at least hold a SSL/TLS frame which in jdk1.8 is 33305 bytes
+ int MINIMUM_NETWORK_BUFFER_SIZE = 64 * 1024;
@ManagedContextDefault(name = NETWORK_BUFFER_SIZE)
- int DEFAULT_NETWORK_BUFFER_SIZE = 64 * 1024;
+ int DEFAULT_NETWORK_BUFFER_SIZE = 256 * 1024;
@ManagedContextDefault(name = "broker.name")
String DEFAULT_BROKER_NAME = "Broker";
Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java?rev=1701625&r1=1701624&r2=1701625&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java Mon Sep 7 13:52:56 2015
@@ -41,6 +41,7 @@ import com.sun.management.HotSpotDiagnos
import com.sun.management.VMOption;
import org.apache.qpid.server.logging.QpidLoggerTurboFilter;
import org.apache.qpid.server.logging.StartupAppender;
+import org.apache.qpid.server.util.QpidByteBufferUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -166,10 +167,9 @@ public class BrokerAdapter extends Abstr
}
@Override
- protected void postResolveChildren()
+ protected void postResolve()
{
- super.postResolveChildren();
-
+ super.postResolve();
Integer networkBufferSize = getContextValue(Integer.class, NETWORK_BUFFER_SIZE);
if (networkBufferSize == null || networkBufferSize < MINIMUM_NETWORK_BUFFER_SIZE)
{
@@ -177,6 +177,13 @@ public class BrokerAdapter extends Abstr
networkBufferSize + "'. Must be larger than " + MINIMUM_NETWORK_BUFFER_SIZE + ".");
}
_networkBufferSize = networkBufferSize;
+ QpidByteBufferUtils.createPool(this, _networkBufferSize);
+ }
+
+ @Override
+ protected void postResolveChildren()
+ {
+ super.postResolveChildren();
ch.qos.logback.classic.Logger rootLogger =
(ch.qos.logback.classic.Logger) LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionPlainDelegate.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionPlainDelegate.java?rev=1701625&r1=1701624&r2=1701625&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionPlainDelegate.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionPlainDelegate.java Mon Sep 7 13:52:56 2015
@@ -43,7 +43,6 @@ public class NonBlockingConnectionPlainD
{
_parent = parent;
_networkBufferSize = port.getNetworkBufferSize();
- QpidByteBufferUtils.createPool(port, _networkBufferSize);
_netInputBuffer = QpidByteBuffer.allocateDirect(_networkBufferSize);
}
Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java?rev=1701625&r1=1701624&r2=1701625&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java Mon Sep 7 13:52:56 2015
@@ -46,7 +46,6 @@ public class NonBlockingConnectionTLSDel
private final SSLEngine _sslEngine;
private final NonBlockingConnection _parent;
- private final int _initialApplicationBufferSize;
private final int _networkBufferSize;
private SSLEngineResult _status;
private final List<QpidByteBuffer> _encryptedOutput = new ArrayList<>();
@@ -70,12 +69,8 @@ public class NonBlockingConnectionTLSDel
+ ") is greater then broker network buffer size (" + _networkBufferSize + ")");
}
- QpidByteBufferUtils.createPool(port, _networkBufferSize);
_netInputBuffer = QpidByteBuffer.allocateDirect(_networkBufferSize);
- _initialApplicationBufferSize = Math.max(_sslEngine.getSession().getApplicationBufferSize() + 50, _networkBufferSize);
-
- QpidByteBufferUtils.createPool(port, _initialApplicationBufferSize);
- _applicationBuffer = QpidByteBuffer.allocateDirect(_initialApplicationBufferSize);
+ _applicationBuffer = QpidByteBuffer.allocateDirect(_networkBufferSize);
}
@Override
@@ -179,9 +174,9 @@ public class NonBlockingConnectionTLSDel
else
{
QpidByteBuffer currentBuffer = _applicationBuffer;
- int newBufSize = (currentBuffer.capacity() < _initialApplicationBufferSize)
- ? _initialApplicationBufferSize
- : currentBuffer.capacity() + _initialApplicationBufferSize;
+ int newBufSize = (currentBuffer.capacity() < _networkBufferSize)
+ ? _networkBufferSize
+ : currentBuffer.capacity() + _networkBufferSize;
_applicationBuffer = QpidByteBuffer.allocateDirect(newBufSize);
_applicationBuffer.put(currentBuffer);
Modified: qpid/java/trunk/test-profiles/Java010Excludes
URL: http://svn.apache.org/viewvc/qpid/java/trunk/test-profiles/Java010Excludes?rev=1701625&r1=1701624&r2=1701625&view=diff
==============================================================================
--- qpid/java/trunk/test-profiles/Java010Excludes (original)
+++ qpid/java/trunk/test-profiles/Java010Excludes Mon Sep 7 13:52:56 2015
@@ -81,3 +81,5 @@ org.apache.qpid.client.SyncPublishTest#*
org.apache.qpid.client.failover.FailoverBehaviourTest#testConnectionCloseInterruptsFailover
org.apache.qpid.client.failover.AddressBasedFailoverBehaviourTest#testConnectionCloseInterruptsFailover
+// This test does not make sense because on 0-10 maxFrameSize is 64kB and the Java Broker sets the networkBufferSize to a minimum of 64kB.
+org.apache.qpid.transport.MaxFrameSizeTest#testTooLargeFrameSize
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org