-
Die HornetQ Core API ist eine proprietäre API von HornetQ, während die JMS API eine Standard-API ist, die vom Java Community Process definiert wurde.
-
Es gibt einige Funktionen, die von der JMS-API nicht unterstützt werden, die aber über die core-api verfügbar sind:
-
Es ist nicht möglich, mehrere Verbraucher für ein einziges Themenabonnement zu haben (z. B. wenn Sie mehrere Verbraucher haben möchten, um es besser zu skalieren)
-
Es hängt eher davon ab, wie Sie das Abonnement erstellen. Sie erstellen einfach eine Warteschlange innerhalb einer Adresse. Sehr einfach.
-
Wir haben eine schöne API für asynchrone Bestätigungen. Wenn Sie diese Funktion nutzen, müssen Sie nicht mehr blockieren.
Der Vorteil von JMS ist die Portabilität. Ihr Code bleibt derselbe, wenn Sie sich entscheiden, den Anbieter zu wechseln.
Der Nachteil von JMS ist, dass es einige Funktionen vermissen lässt und etwas langatmig ist, woran gerade an JMS 2 JSR gearbeitet wird.
- Ja, denn wie ich hier schon sagte, ist die Hornetq-core api eine proprietäre API und funktioniert daher nur auf HornetQ. Genauso, wie einige Nachrichtensysteme eine proprietäre API haben.
Wenn Sie Ihren Messaging-Zugriff kapseln, können Sie dies jedoch stark minimieren, indem Sie einfach eine einzelne Klasse in Ihrem System mit Standard-OO-Techniken ersetzen.