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

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 5c4e533cf740469fa6b6fd464308dba33ff86a64
Author: Claus Ibsen <[email protected]>
AuthorDate: Tue Feb 16 13:46:58 2021 +0100

    camel-http - Little optimize and load tests to reuse template to avoid 
creating garbage objects.
---
 .../apache/camel/component/http/HttpProducer.java  |  4 +-
 .../camel/component/http/HttpProducerLoadTest.java | 55 +++++-----------------
 2 files changed, 16 insertions(+), 43 deletions(-)

diff --git 
a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpProducer.java
 
b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpProducer.java
index 4b1dbaf..4278b87 100644
--- 
a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpProducer.java
+++ 
b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpProducer.java
@@ -247,7 +247,9 @@ public class HttpProducer extends DefaultProducer {
             }
             httpResponse = executeMethod(httpRequest);
             int responseCode = httpResponse.getStatusLine().getStatusCode();
-            LOG.debug("Http responseCode: {}", responseCode);
+            if (LOG.isDebugEnabled()) {
+                LOG.debug("Http responseCode: {}", responseCode);
+            }
 
             if (!throwException) {
                 // if we do not use failed exception then populate response 
for all response codes
diff --git 
a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerLoadTest.java
 
b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerLoadTest.java
index cd25a64..57ddd62 100644
--- 
a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerLoadTest.java
+++ 
b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerLoadTest.java
@@ -16,6 +16,10 @@
  */
 package org.apache.camel.component.http;
 
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.camel.Endpoint;
 import org.apache.camel.RoutesBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.http.handler.DrinkValidationHandler;
@@ -74,51 +78,18 @@ public class HttpProducerLoadTest extends BaseHttpTest {
 
     @Test
     public void testProducerLoad() throws Exception {
+        Map<String, Object> map = new HashMap<>();
+        for (int i = 0; i < 40; i++) {
+            map.put("mykey" + i, "myvalue" + i);
+        }
+
         StopWatch watch = new StopWatch();
+
+        Endpoint to = getMandatoryEndpoint("direct:echo");
         for (int i = 0; i < 10000000; i++) {
-            fluentTemplate.to("direct:echo")
-                    .withHeader("a", "aaa")
-                    .withHeader("b", "bbb")
-                    .withHeader("c", "ccc")
-                    .withHeader("d", "ddd")
-                    .withHeader("e", "eee")
-                    .withHeader("f", "fff")
-                    .withHeader("g", "ggg")
-                    .withHeader("h", "hhh")
-                    .withHeader("i", "iii")
-                    .withHeader("j", "jjj")
-                    .withHeader("a2", "aaa")
-                    .withHeader("b2", "bbb")
-                    .withHeader("c2", "ccc")
-                    .withHeader("d2", "ddd")
-                    .withHeader("e2", "eee")
-                    .withHeader("f2", "fff")
-                    .withHeader("g2", "ggg")
-                    .withHeader("h2", "hhh")
-                    .withHeader("i2", "iii")
-                    .withHeader("j2", "jjj")
-                    .withHeader("a3", "aaa")
-                    .withHeader("b3", "bbb")
-                    .withHeader("c3", "ccc")
-                    .withHeader("d3", "ddd")
-                    .withHeader("e3", "eee")
-                    .withHeader("f3", "fff")
-                    .withHeader("g3", "ggg")
-                    .withHeader("h3", "hhh")
-                    .withHeader("i3", "iii")
-                    .withHeader("j3", "jjj")
-                    .withHeader("a4", "aaa")
-                    .withHeader("b4", "bbb")
-                    .withHeader("c4", "ccc")
-                    .withHeader("d4", "ddd")
-                    .withHeader("e4", "eee")
-                    .withHeader("f4", "fff")
-                    .withHeader("g4", "ggg")
-                    .withHeader("h4", "hhh")
-                    .withHeader("i4", "iii")
-                    .withHeader("j4", "jjj")
-                    .withHeader("myHeader", "msg" + i).send();
+            template.sendBodyAndHeaders(to, "Message " + i, map);
         }
+
         LOG.info("Took {} ms", watch.taken());
     }
 

Reply via email to