diff options
6 files changed, 21 insertions, 22 deletions
diff --git a/container-messagebus/src/main/java/com/yahoo/container/jdisc/messagebus/SessionCache.java b/container-messagebus/src/main/java/com/yahoo/container/jdisc/messagebus/SessionCache.java index 795278bca84..7f67f7ec403 100644 --- a/container-messagebus/src/main/java/com/yahoo/container/jdisc/messagebus/SessionCache.java +++ b/container-messagebus/src/main/java/com/yahoo/container/jdisc/messagebus/SessionCache.java @@ -123,7 +123,7 @@ public final class SessionCache extends AbstractComponent { .setListenPort(mbusConfig.port()) .setNumTargetsPerSpec(mbusConfig.numconnectionspertarget()) .setNumNetworkThreads(mbusConfig.numthreads()) - .setWakeupTriggerCount(mbusConfig.wakeup_trigger_count()) + .setTransportEventsBeforeWakeup(mbusConfig.transport_events_before_wakeup()) .setOptimization(RPCNetworkParams.Optimization.valueOf(mbusConfig.optimize_for().name())); return SharedMessageBus.newInstance(mbusParams, netParams); } diff --git a/container-messagebus/src/main/resources/configdefinitions/container.jdisc.container-mbus.def b/container-messagebus/src/main/resources/configdefinitions/container.jdisc.container-mbus.def index 40557f00dfb..d3aa3bbdc4a 100644 --- a/container-messagebus/src/main/resources/configdefinitions/container.jdisc.container-mbus.def +++ b/container-messagebus/src/main/resources/configdefinitions/container.jdisc.container-mbus.def @@ -15,8 +15,8 @@ numthreads int default=2 # Optimize for latency, or throughput. optimize_for enum {LATENCY, THROUGHPUT} default=LATENCY -# Number of writeevents before triggering wakeup of network thread. -wakeup_trigger_count int default=1 +# Number of events before triggering wakeup of network thread. +transport_events_before_wakeup int default=1 # Everying below is deprecated and will go away very soon. # Dynamic throttling is used, and works better than anything else. diff --git a/jrt/src/com/yahoo/jrt/Transport.java b/jrt/src/com/yahoo/jrt/Transport.java index 71784703fc2..2d2e653956d 100644 --- a/jrt/src/com/yahoo/jrt/Transport.java +++ b/jrt/src/com/yahoo/jrt/Transport.java @@ -27,7 +27,7 @@ public class Transport { private final Worker worker; private final AtomicInteger runCnt; private final boolean tcpNoDelay; - private final int wakeupTriggerCount; + private final int eventsBeforeWakeup; private final TransportMetrics metrics = TransportMetrics.getInstance(); private final ArrayList<TransportThread> threads = new ArrayList<>(); @@ -43,14 +43,14 @@ public class Transport { * @param fatalHandler fatal error handler * @param cryptoEngine crypto engine to use * @param numThreads number of {@link TransportThread}s. - * @param wakeupTriggerCount number write events in Q before waking thread up + * @param eventsBeforeWakeup number write events in Q before waking thread up **/ - public Transport(String name, FatalErrorHandler fatalHandler, CryptoEngine cryptoEngine, int numThreads, boolean tcpNoDelay, int wakeupTriggerCount) { + public Transport(String name, FatalErrorHandler fatalHandler, CryptoEngine cryptoEngine, int numThreads, boolean tcpNoDelay, int eventsBeforeWakeup) { this.name = name; this.fatalHandler = fatalHandler; // NB: this must be set first this.cryptoEngine = cryptoEngine; this.tcpNoDelay = tcpNoDelay; - this.wakeupTriggerCount = Math.max(1, wakeupTriggerCount); + this.eventsBeforeWakeup = Math.max(1, eventsBeforeWakeup); connector = new Connector(); worker = new Worker(this); runCnt = new AtomicInteger(numThreads); @@ -58,17 +58,17 @@ public class Transport { threads.add(new TransportThread(this, i)); } } - public Transport(String name, CryptoEngine cryptoEngine, int numThreads, int wakeupTriggerCount) { - this(name, null, cryptoEngine, numThreads, true, wakeupTriggerCount); + public Transport(String name, CryptoEngine cryptoEngine, int numThreads, int eventsBeforeWakeup) { + this(name, null, cryptoEngine, numThreads, true, eventsBeforeWakeup); } public Transport(String name, CryptoEngine cryptoEngine, int numThreads) { this(name, null, cryptoEngine, numThreads, true, 1); } - public Transport(String name, int numThreads, int wakeupTriggerCount) { - this(name, null, CryptoEngine.createDefault(), numThreads, true, wakeupTriggerCount); + public Transport(String name, int numThreads, int eventsBeforeWakeup) { + this(name, null, CryptoEngine.createDefault(), numThreads, true, eventsBeforeWakeup); } - public Transport(String name, int numThreads, boolean tcpNoDelay, int wakeupTriggerCount) { - this(name, null, CryptoEngine.createDefault(), numThreads, tcpNoDelay, wakeupTriggerCount); } + public Transport(String name, int numThreads, boolean tcpNoDelay, int eventsBeforeWakeup) { + this(name, null, CryptoEngine.createDefault(), numThreads, tcpNoDelay, eventsBeforeWakeup); } public Transport(String name, int numThreads) { this(name, null, CryptoEngine.createDefault(), numThreads, true, 1); } @@ -88,7 +88,7 @@ public class Transport { } boolean getTcpNoDelay() { return tcpNoDelay; } - int getWakeupTriggerCount() { return wakeupTriggerCount; } + int getEventsBeforeWakeup() { return eventsBeforeWakeup; } String getName() { return name; } diff --git a/jrt/src/com/yahoo/jrt/TransportThread.java b/jrt/src/com/yahoo/jrt/TransportThread.java index 88afb48a1a7..107e0490405 100644 --- a/jrt/src/com/yahoo/jrt/TransportThread.java +++ b/jrt/src/com/yahoo/jrt/TransportThread.java @@ -5,7 +5,6 @@ package com.yahoo.jrt; import java.io.IOException; import java.nio.channels.SelectionKey; import java.nio.channels.Selector; -import java.nio.channels.SocketChannel; import java.util.Iterator; import java.util.logging.Level; import java.util.logging.Logger; @@ -128,7 +127,7 @@ public class TransportThread { queue.enqueue(cmd); qlen = queue.size(); } - if (qlen == parent.getWakeupTriggerCount()) { + if (qlen == parent.getEventsBeforeWakeup()) { selector.wakeup(); } return true; diff --git a/messagebus/src/main/java/com/yahoo/messagebus/network/rpc/RPCNetwork.java b/messagebus/src/main/java/com/yahoo/messagebus/network/rpc/RPCNetwork.java index 0f2bc07a366..1c41f87d1ee 100644 --- a/messagebus/src/main/java/com/yahoo/messagebus/network/rpc/RPCNetwork.java +++ b/messagebus/src/main/java/com/yahoo/messagebus/network/rpc/RPCNetwork.java @@ -88,7 +88,7 @@ public class RPCNetwork implements Network, MethodHandler { this.slobroksConfig = slobrokConfig; identity = params.getIdentity(); orb = new Supervisor(new Transport("mbus-rpc-" + identity.getServicePrefix(), params.getNumNetworkThreads(), - shouldEnableTcpNodelay(params.getOptimization()), params.getWakeupTriggerCount())); + shouldEnableTcpNodelay(params.getOptimization()), params.getTransportEventsBeforeWakeup())); orb.setMaxInputBufferSize(params.getMaxInputBufferSize()); orb.setMaxOutputBufferSize(params.getMaxOutputBufferSize()); targetPool = new RPCTargetPool(params.getConnectionExpireSecs(), params.getNumTargetsPerSpec()); diff --git a/messagebus/src/main/java/com/yahoo/messagebus/network/rpc/RPCNetworkParams.java b/messagebus/src/main/java/com/yahoo/messagebus/network/rpc/RPCNetworkParams.java index 86f426a0a7f..db22363785d 100755 --- a/messagebus/src/main/java/com/yahoo/messagebus/network/rpc/RPCNetworkParams.java +++ b/messagebus/src/main/java/com/yahoo/messagebus/network/rpc/RPCNetworkParams.java @@ -22,7 +22,7 @@ public class RPCNetworkParams { private int numTargetsPerSpec = 1; private int numNetworkThreads = 2; - private int wakeupTriggerCount = 1; + private int transportEventsBeforeWakeup = 1; public enum Optimization {LATENCY, THROUGHPUT} Optimization optimization = Optimization.LATENCY; @@ -219,12 +219,12 @@ public class RPCNetworkParams { return this; } - public int getWakeupTriggerCount() { - return wakeupTriggerCount; + public int getTransportEventsBeforeWakeup() { + return transportEventsBeforeWakeup; } - public RPCNetworkParams setWakeupTriggerCount(int wakeupTriggerCount) { - this.wakeupTriggerCount = wakeupTriggerCount; + public RPCNetworkParams setTransportEventsBeforeWakeup(int transportEventsBeforeWakeup) { + this.transportEventsBeforeWakeup = transportEventsBeforeWakeup; return this; } } |