Nachrichtengesteuerte Bean / Message-Driven Bean

Was ist Nachrichtengesteuerte Bean / Message-Driven Bean?
Eine nachrichtengesteuerte Bean ist eine Komponente einer schlanken Unternehmensanwendung, die zum Verarbeiten von Nachrichten im asynchronen Modus verwendet wird, in der der Benutzer nicht immer sofort Ergebnisse erhält. Jede Komponente kann diese Nachrichten unabhängig davon senden, ob sie die J2EE-Technologie verwendet.

Die zwei verschiedenen Funktionen, die Message-Driven-Beans von Session- und Entity-Beans unterscheiden, bestehen darin, dass auf Message-Driven Beans nicht über Schnittstellen zugegriffen werden kann und sie nur über eine Bean-Klasse verfügen.

Message-Beans werden auch für die folgenden Merkmale notiert:

Die Instanzen von Message-Driven Beans behalten für einen bestimmten Client keinen Daten- oder Konversationsstatus bei.

Alle Instanzen einer Message-Driven Bean sind äquivalent, sodass der EJB-Container jeder Message-Driven-Bean-Instanz eine Nachricht zuweisen kann. Der Container kann diese Instanzen zusammenfassen, damit Nachrichtenströme gleichzeitig verarbeitet werden können.

Eine einzelne nachrichtengesteuerte Bean kann Nachrichten von mehreren Clients verarbeiten.

Nachrichtengesteuerte Beans werden in der asynchronen Kommunikation zwischen Unternehmensanwendungskomponenten verwendet. Eine Nachricht wird wie folgt verarbeitet:

1.) Wenn eine neue Nachricht eintrifft, ruft der Enterprise-JavaBeans-Container die onMessage-Methode der Message-Driven Bean zum Verarbeiten der Nachricht auf.

2.) Die Nachricht wird als JMS-Nachricht umgewandelt, die basierend auf der Geschäftslogik der Anwendung verarbeitet wird. Wenn die onMessage-Methode die Nachricht nur verarbeiten möchte, ruft sie eine Session-Bean auf. Wenn die Methode jedoch die Nachricht in einer Datenbank speichern möchte, ruft sie eine Entity-Bean auf.

3.) Die Nachricht wird dann an eine nachrichtengesteuerte Bean gesendet, so dass die oben genannten Vorgänge Teil einer einzelnen und vollständigen Transaktion werden. Eine Nachricht wird manchmal erneut gesendet, wenn bei der Nachrichtenverarbeitung ein Rollback stattfindet.


War die Erklärung zu "Nachrichtengesteuerte Bean / Message-Driven Bean" hilfreich? Jetzt bewerten:

Weitere Erklärungen zu