Eingehenden Nachrichtenfluss für JCA-1.5-MDBs regulieren

In diesem Artikel wird beschrieben, wie Sie die Nachrichtenübermittlung für MDBs (Message-driven Beans, nachrichtengesteuerte Beans) regulieren können, die als Nachrichtenendpunkte für JCA-1.5-Ressourcenadapter für eingehende Nachrichten implementiert sind.

Vorbereitende Schritte

Die Regulierung von Nachrichten, die in diesem Artikel beschrieben ist, gilt nicht für die beiden JCA-1.5-konformen Messaging-Provider, die mit WebSphere Application Server bereitgestellt werden:
  • Standard-Messaging-Provider
  • IBM MQ-Messaging-Provider

Für den Standard-Messaging-Provider konfigurieren Sie die Nachrichtenregulierung gemäß der Beschreibung in den zugehörigen Tasks. Für den IBM MQ-Messaging-Provider konfigurieren Sie die Nachrichtenregulierung, indem Sie die Eigenschaft Maximale Anzahl an Serversitzungen in der Anzeige mit den Aktivierungsspezifikationen des IBM MQ-Messaging-Providers bzw. die Eigenschaft maxPoolSize, wenn Sie den wsadmin-Befehl createWMQActivationSpec oder modifyWMQActivationSpec verwenden.

Wenn Sie einen JCA-1.5-konformen JMS-Messaging-Provider eines anderen Anbieters verwenden, klären Sie mit Ihrem Anbieter, ob die Methode der Nachrichtenregulierung, die in diesem Artikel beschrieben wird, für den Messaging-Provider geeignet ist.

Informationen zu diesem Vorgang

Für Installationen mit Ressourcenadaptern, die die Unterstützung für die Nachrichtenübermittlung mit Java EE Connector Architecture (JCA) Version 1.5 implementieren, bietet WebSphere Application Server als Steuerungsmöglichkeit, die Nachrichtenübermittlung an die Endpunkt-MDBs zu regulieren. Sie können diese Unterstützung verwenden, um zu verhindern, dass der Server mit einer Flut eingehender Nachrichten überlastet wird.

Die Nachrichtenübermittlung wird auf MDB-Basis (Message-driven Bean) gedrosselt, indem die maximale Anzahl an Endpunktinstanzen begrenzt wird, die von dem Adapter erstellt werden kann, an den die MDB gebunden ist. Wenn der Adapter versucht, eine Endpunktinstanz zu erstellen, wird gemäß der Unterstützung in der JCA-1.5-Architektur ein Proxy für die MDB-Instanz erstellt und zurückgegeben. Es gibt eine 1:1-Entsprechung zwischen den Proxys und MDB-Instanzen und wie bei den MDB-Instanzen werden die Proxys basierend auf den für die MDB definierten Mindest- und Maximalwerten für die Poolgröße in einen Pool gestellt. Die Regulierung erfolgt durch die Verwaltung des Proxy-Pools.

Wenn der Adapter versucht, einen Endpunkt zu erstellen, und die Anzahl der derzeit erstellten Endpunktproxys der maximalen Größe des Pools entspricht, wird bei Verarbeitung des Adapters createEndPoint die Ausnahme Unavailable Exception (Nicht verfügbar) zurückgegeben. Wenn diese Ausnahme angezeigt wird, setzt der Adapter so lange keine weiteren Anforderungen des Typs "createEndPoint()" mehr ab, bis er mindestens einen Endpunkt zur Wiederverwendung durch den Server freigegeben hat. Auf diese Weise können die Installationen die Nachrichtenübermittlung an eine JCA 1.5 MDB basierend auf der Einstellung der maximalen Größe des Pools, der einer JCA 1.5 MDB (Message-driven Bean) zugeordnet ist, regulieren.

Zum Festlegen der Poolgröße kann die JVM-Systemeigenschaft "com.ibm.websphere.ejbcontainer.poolsize" verwendet werden, mit der die minimale und maximale Poolgröße für Stateless-Beans, Message-driven Beans und Entity-Beans definiert werden kann. Für eine Message-driven Bean (MDB), die JCA 1.5 unterstützt, legt der angegebene maximale Poolgrößenwert fest, wie viele Nachrichtenendpunktinstanzen für die betreffende MDB erstellt werden können. Wenn in der Installation beispielsweise die maximale Poolgröße für eine JCA-1.5-MDB mit 5 definiert ist, können maximal 5 Nachrichten gleichzeitig an 5 Instanzen der MDB zugestellt werden. Diese Eigenschaft kann mit dem Scripting-Tool wsadmin angegeben werden, oder sie kann als Umgebungsvariable in der Administrationskonsole angegeben werden.

Vorgehensweise

  1. Öffnen Sie die Administrationskonsole.
  2. Wählen Sie Server > Servertypen > WebSphere-Anwendungsserver > Servername aus.
  3. Klicken Sie unter Serverinfrastruktur auf Java- und Prozessverwaltung >Prozessdefinition.
  4. [z/OS]Wählen Sie Servant aus.
  5. Wählen Sie unter "Weitere Eigenschaften" den Eintrag Java Virtual Machine aus.
  6. Wählen Sie unter "Weitere Eigenschaften" den Eintrag Angepasste Eigenschaften aus.
  7. Wählen Sie Neu aus. Daraufhin wird eine Anzeige mit drei Feldern Allgemeine Eigenschaften angezeigt. Dort definieren Sie die Eigenschaft.
  8. Geben Sie im Feld Name die Eigenschaft com.ibm.websphere.ejbcontainer.poolsize ein.
  9. Werte für das Feld Wert sind unter Systemeigenschaften des EJB-Containers aufgeführt.
  10. Nachdem Sie den Wert für die Eigenschaft definiert haben, klicken Sie auf OK. Daraufhin werden Sie dazu aufgefordert, die Änderungen zu speichern.
  11. Klicken Sie auf Speichern.

Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tdat_throttle
Dateiname:tdat_throttle.html