You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2021/03/11 06:06:46 UTC

[camel] 01/02: CAMEL-16326: camel-core - Optimize usage of exchanage properties for state in routing engine.

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

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

commit 8ffc458c1e87778ae6f7d24ba40432d6b1471d62
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Mar 11 06:08:58 2021 +0100

    CAMEL-16326: camel-core - Optimize usage of exchanage properties for state in routing engine.
---
 core/camel-api/src/main/java/org/apache/camel/Exchange.java | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/core/camel-api/src/main/java/org/apache/camel/Exchange.java b/core/camel-api/src/main/java/org/apache/camel/Exchange.java
index 7630c65..af4e559 100644
--- a/core/camel-api/src/main/java/org/apache/camel/Exchange.java
+++ b/core/camel-api/src/main/java/org/apache/camel/Exchange.java
@@ -65,6 +65,14 @@ import org.apache.camel.spi.annotations.ConstantProvider;
 @ConstantProvider("org.apache.camel.ExchangeConstantProvider")
 public interface Exchange {
 
+    // TODO: camel-core-processor using exchange properties for meta-data
+    // gather list of different keys they use, and then make an optimized
+    // exchange property map for this by getting key via some ordinal value (0, 1, 2, 3, etc)
+    // that is an index to an array that holds the value
+    // and then that array is reset in reset method
+    // and the getProperty is then aware of these special keys to lookup in array instead of map
+    // and then do profiling again JDK mission control, likely 1.4mb reduced down to very little
+
     String AUTHENTICATION = "CamelAuthentication";
     String AUTHENTICATION_FAILURE_POLICY_ID = "CamelAuthenticationFailurePolicyId";
     @Deprecated