https://issues.apache.org/jira/browse/AMQ-5368 - improve nio ssl handshake performance - use soTimeout for handshake selector

This commit is contained in:
Dejan Bosanac 2015-07-13 13:34:08 +02:00
parent 18300c6514
commit ad8879d283
1 changed files with 2 additions and 3 deletions

View File

@ -348,7 +348,6 @@ public class NIOSSLTransport extends NIOTransport {
Selector selector = null;
SelectionKey key = null;
boolean readable = true;
int timeout = 100;
try {
while (true) {
HandshakeStatus handshakeStatus = sslEngine.getHandshakeStatus();
@ -365,8 +364,8 @@ public class NIOSSLTransport extends NIOTransport {
} else {
key.interestOps(SelectionKey.OP_READ);
}
int keyCount = selector.select(timeout);
if (keyCount == 0 && ((System.currentTimeMillis() - now) >= timeout)) {
int keyCount = selector.select(this.getSoTimeout());
if (keyCount == 0 && this.getSoTimeout() > 0 && ((System.currentTimeMillis() - now) >= this.getSoTimeout())) {
throw new SocketTimeoutException("Timeout during handshake");
}
readable = key.isReadable();