You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwhisk.apache.org by ma...@apache.org on 2018/08/20 14:50:28 UTC

[incubator-openwhisk] branch master updated: Bump fetch.max.wait of Kafka-consumers to lower the load on Kafka in large systems. (#3971)

This is an automated email from the ASF dual-hosted git repository.

markusthoemmes pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-openwhisk.git


The following commit(s) were added to refs/heads/master by this push:
     new 793b867  Bump fetch.max.wait of Kafka-consumers to lower the load on Kafka in large systems. (#3971)
793b867 is described below

commit 793b867746ff952ce53335130895bfadc7fd5fcf
Author: Christian Bickel <gi...@cbickel.de>
AuthorDate: Mon Aug 20 16:50:24 2018 +0200

    Bump fetch.max.wait of Kafka-consumers to lower the load on Kafka in large systems. (#3971)
---
 common/scala/src/main/resources/application.conf             | 12 ++++++++----
 .../src/main/scala/whisk/core/invoker/InvokerReactive.scala  |  2 +-
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/common/scala/src/main/resources/application.conf b/common/scala/src/main/resources/application.conf
index d9e557d..0b92573 100644
--- a/common/scala/src/main/resources/application.conf
+++ b/common/scala/src/main/resources/application.conf
@@ -81,10 +81,14 @@ whisk {
 
             max-poll-interval-ms = 1800000 // 30 minutes
 
-            // This value controls the server-side wait time which affects polling latency.
-            // A low value improves latency performance but it is important to not set it too low
-            // as that will cause excessive busy-waiting.
-            fetch-max-wait-ms = 20
+            // The maximum amount of time the server will block before answering
+            // the fetch request if there isn't sufficient data to immediately
+            // satisfy the requirement given by fetch.min.bytes.
+            // (default is 500, default of fetch.min.bytes is 1)
+            // On changing fetch.min.bytes, a high value for fetch.max.wait.ms,
+            // could increase latency of activations.
+            // A low value will cause excessive busy-waiting.
+            fetch-max-wait-ms = 500
         }
 
         topics {
diff --git a/core/invoker/src/main/scala/whisk/core/invoker/InvokerReactive.scala b/core/invoker/src/main/scala/whisk/core/invoker/InvokerReactive.scala
index f643a72..de9b4bc 100644
--- a/core/invoker/src/main/scala/whisk/core/invoker/InvokerReactive.scala
+++ b/core/invoker/src/main/scala/whisk/core/invoker/InvokerReactive.scala
@@ -108,7 +108,7 @@ class InvokerReactive(
     maxPollInterval = TimeLimit.MAX_DURATION + 1.minute)
 
   private val activationFeed = actorSystem.actorOf(Props {
-    new MessageFeed("activation", logging, consumer, maximumContainers, 500.milliseconds, processActivationMessage)
+    new MessageFeed("activation", logging, consumer, maximumContainers, 1.second, processActivationMessage)
   })
 
   /** Sends an active-ack. */