Message-Expiring über mehrere Camel-Routen hinweg

Hobbes

Aktives Mitglied
Hallo zusammen,

ich habe ein System, das hauptsächlich Daten-Routing macht. Hierbei werden die Daten mit apache camel und ActiveMQ über mehrere Microservices hinweg geroutet.

Jeder Microservice hat seine eigene ActiveMQ-Instanz und einen eigenen Camel-Context (siehe "Skizze" unten)

Die Verarbeitung der Daten ist nicht zeitkritisch, aber die Daten veralten nach einer gewissen Zeit (z.B. 2 Stunden). Ist es möglich mit camel-Mitteln der Nachricht ein Expire-Date zu geben, das über alle Routen hinweg geprüft wird? Oder muss ich das manuell implementieren?

Ich habe das hier gefunden: https://camel.apache.org/components/4.4.x/eips/message-expiration.html Aber das klingt für mich so, als bezieht sich das nur auf genau eine Route und nicht auf die gesamte Kette. Dann würden sich die TTL-Zeiten ja im Extremfall über die Gesamtroute aufsummieren oder zu früh abbrechen.

Hier eine vereinfachte "Skizze":

Code:
+-------------------------------+
|       Microservice 1          |
|                               |
|         +------------+        |
|         | ActiveMQ 1 |        |
|         +------------+        |
|                               |
| from(external).to(activemq_1) |
+-------------------------------+


+---------------------------------+
|       Microservice 2            |
|                                 |
|         +------------+          |
|         | ActiveMQ 2 |          |
|         +------------+          |
|                                 |
| from(activemq_1).to(activemq_2) |
| from(activemq_2).to(activemq_3) |
|                                 |
+---------------------------------+


+---------------------------------+
|       Microservice 3            |
|                                 |
|         +------------+          |
|         | ActiveMQ 3 |          |
|         +------------+          |
|                                 |
| from(activemq_3).to(external)   |
|                                 |
+---------------------------------+
 
Zuletzt bearbeitet:

Ähnliche Java Themen


Oben