Ich muss eine Nachricht an mehrere Empfänger senden und dann mit der Route nach einem dynamischen Zeitüberschreitungswert fortfahren (d. H. Ein Wert, der für jeden Austausch unterschiedlich ist) - unabhängig davon, ob einer oder mehrere der Empfänger etwas zurückgeben konnten. Ich dachte, ich könnte dies über ein Multicast durchführen, wo einer der Zweige ein Timer ist, aber ich kann nicht scheinen, eine Methode zu finden, Multicast zu beenden, wenn ein Zweig ankommt, den anderen Zweig ignorierend. Es ist in etwa vergleichbar mit der completionSize vielleicht, aber die passende EIP für meinen Fall ist Multicast, also bevor ich die hässliche Lösung denke, fragte ich ...Gibt es in Camel Multicast eine Möglichkeit zum Beenden, bevor alle Empfänger zurückgegeben wurden?
Q
Gibt es in Camel Multicast eine Möglichkeit zum Beenden, bevor alle Empfänger zurückgegeben wurden?
1
A
Antwort
0
Ich denke, wenn Aggregator erste Daten empfangen, senden Aggregator Nachricht an nächste Route mithilfe der Herstellervorlage
+0
Aggregator ist eine Lösung, aber nach meinem Verständnis ändert es den Fluss vollständig. Ich möchte die gleiche Nachricht an mehrere Empfänger (wie Multicast oder Empfängerliste) senden, dann auf eine dynamische (Austausch basierte) Zeit warten und nur mit den verfügbaren Antworten fortfahren, den Rest verwerfen (aber nicht auf sie warten). Mit Aggregator muss ich jeden Empfänger als separate Route haben. – Deroude
Verwandte Themen
- 1. Android: Gibt es eine Möglichkeit, einen Bluetooth-Empfänger frühzeitig zu beenden, wenn ein Gerät gefunden wird?
- 2. Gibt es eine Möglichkeit, eine Bereinigung durchzuführen, bevor die Anwendung beendet wird, wenn Sie auf "In Casting beenden" klicken?
- 3. Python: Gibt es eine Möglichkeit, bevor eine oder Anweisung auszuführen =
- 4. Gibt es eine Möglichkeit, eine Funktion auszuführen, NACHDEM alle Shortcodes ausgeführt wurden? (Oder höher)
- 5. JMS Thema vs Multicast in Apache Camel
- 6. Camel Multicast verhält sich seltsam
- 7. Apache Camel: Spring Multicast + Verarbeitung
- 8. Gibt es eine Möglichkeit, alle Modellbeziehungen in ASP.NET anzuzeigen?
- 9. Gibt es eine Möglichkeit, Multicast IP auf derselben Box zu testen?
- 10. Gibt es eine Möglichkeit, Rückerstattungsdetails zu erhalten (dh welche Artikel wurden zurückgegeben)?
- 11. Gibt es eine Möglichkeit, "träge" zu lesen?
- 12. Gibt es eine Möglichkeit
- 13. Gibt es eine Möglichkeit, alle Teildateien in SASS zu importieren?
- 14. Gibt es eine Möglichkeit zum Bereitstellen einzelner Bericht in SSRS
- 15. Gibt es eine Möglichkeit, Selenium-Treiber zu beenden, ohne die Sitzung zu beenden? (python)
- 16. Gibt es eine Möglichkeit, alle JavaScript-Timer gleichzeitig zu löschen?
- 17. Gibt es eine Möglichkeit, benachrichtigt zu werden, bevor die App durch eine andere ersetzt wird?
- 18. Gibt es eine Möglichkeit RequireJS Module zu starten, bevor alle Elemente geladen sind?
- 19. Gibt es eine Möglichkeit zum Scrollen in einem WPF ScrollViewer?
- 20. Pyglet, Beenden, nachdem alle Sounds abgespielt wurden
- 21. Gibt es eine Möglichkeit, die Quelle einer Webseite zu sehen, nachdem alle jquery-Skripte ausgeführt wurden?
- 22. Gibt es eine Möglichkeit, alle lokalen Variablen in Eclipse auszurichten?
- 23. XPath: Gibt es eine Möglichkeit, alle Kinder Text in XPath
- 24. Amazon SES Sendmail - Gibt es eine Möglichkeit, Empfänger-E-Mail-Verifizierungsprozess zu umgehen oder zu vermeiden
- 25. Gibt es eine Möglichkeit, immer etwas Code vor dem Beenden von Funktion in VBScript
- 26. Gibt es eine Möglichkeit, alle PrimeFaces-Animationen zu deaktivieren?
- 27. Gibt es eine Möglichkeit, Doxygen anzuweisen, (alle) Namespaces zu ignorieren?
- 28. Gibt es eine Möglichkeit, alle Dateien aus einem Blob azurblauen
- 29. Gibt es eine Möglichkeit, WatiN auf einen Link zu klicken, bevor die Seite geladen wird
- 30. Gibt es eine Möglichkeit, alle Klassendaten zu drucken
[Multicast] (http://camel.apache.org/multicast.html) hat bereits eine 'timeout'-Einstellung, also was fehlt mir? – Morfic
Es ist nicht dynamisch. Sie können es nicht basierend auf einem Ausdruck ändern. – Deroude