3 Stimmen

HornetQ-Kern-API und JMS

Ich habe ein paar Fragen zu HornetQ:

  1. Was sind die Unterschiede zwischen der HornetQ-Kern-API und der JMS-API?

  2. Gibt es einen Vor- oder Nachteil bei der Verwendung eines dieser Geräte?

  3. Stimmt es, dass ich bei Verwendung des Kerns A Messaging-Bus zu wechseln (z. B. zu ActiveMQ), dann muss ich alle meine Codes ändern?

5voto

Clebert Suconic Punkte 5266
  1. 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.

  2. 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.

  1. 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.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X