Ich habe eine Camel in Java DSL wie folgt geschrieben Strecke Definition:Wie ändert man Prozessoreigenschaften zur Laufzeit mit Camel?
from(myEndpoint)
.throttle(200)
.to(myOtherEndpoint);
Dies verbindet meine beiden Endpunkte eine Throttler verwendet, die den Nachrichtenfluss zu 200 Nachrichten pro Sekunde begrenzt.
Ich suche nach einer Möglichkeit, die maximaleRequestCount/Sekunde während der Laufzeit zu ändern. Also muss ich irgendwie zu der aufgerufenen Throttler Instanz kommen und die Eigenschaft ändern.
Wie kann ich auf den Throttler zugreifen?
Ja alles in der Camel Route kocht auf einen Prozessor, so können Sie tun, was Sie getan haben. Sie können einem Prozessor in der Route .from (myEndpoint) .throttle (200) .id ("myThrottler") eine ID zuweisen. To (myOtherEndpoint); Dann was fehlt derzeit ist ein nettes Nachschlagen Throttler Throttler = context.getProcessorById ("myThrottler", Throttler.class); // dann ändern Sie den Throttler wie Sie möchten. –
Ich habe gerade ein Ticket für eine nette Suche erstellt: CAMEL-2258 –