Show TOC Anfang des Inhaltsbereichs

Vorgehensweisen Connection Pools  Dokument im Navigationsbaum lokalisieren

Verwendung

Wenn Sie mit generischen Benutzernamen arbeiten, um sich am SAP Server anzumelden (was bei Web Server Anwendungen gewöhnlich der Fall ist), ist es sinnvoll, Connection Pools zu verwenden, da alle Verbindungen in einem Pool die gleichen Information zu System, Benutzer und Mandant enthalten. Connection Pools haben gegenüber direkten Verbindungen zwei entscheidende Vorteile:

·         Sie vermeiden einen Overhead bei der SAP-Anmeldung, da die Verbindung geöffnet bleibt und wiederverwendet werden kann, sobald die Anmeldung einmal erfolgt ist.

·         Sie können die maximale Anzahl konkurrierender Anmeldungen begrenzen und so den Verbrauch zu vieler SAP-Ressourcen vermeiden.

Hinweis

Wählen Sie die maximale Anzahl konkurrierender Anmeldungen so, dass keine Wartesituation für die Benutzer entsteht.

Hinweis

Den größten Nutzen können Sie mit Connection Pools erreichen, wenn alle Pools die gleiche Benutzer-ID verwenden. Da in SAP die Berechtigungen jedoch mit dem Benutzer verknüpft sind, ist dieses Vorgehen nur unter bestimmten Voraussetzungen (z.B. wenn keine sicherheitsrelevanten Bereiche betroffen sind) realisierbar.

 

Das folgende Beispielcoding soll genau wie im Abschnitt Direkte Verbindungen Verbindungsattribute auflisten, nur das hier statt direkter Verbindungen Connection Pools verwendet werden. Das komplette Beispielprogramm zum Erstellen eines Connection Pools finden Sie unter

·         Beispielprogramm Connect2.

Aktivitäten

...

       1.      Als ersten Schritt benötigen Sie folgende spezifische Klassen:

¡        JCO.Pool: diese Klasse repräsentiert einen Connection Pool

¡        JCO.PoolManager: hier werden alle Connection Pool innerhalb einer Java Virtual Machine (JVM) verwaltet.

       2.      Wählen Sie einen Pool-Namen. In SAP JCo können Sie beliebige Pool-Namen verwenden. Da Pools jedoch innerhalb einer JVM global gültig sind, sollten Sie einen bestimmten Namensstandard verwenden, wenn verschiedene Anwendungen auf der selben JVM laufen.

       3.      Das globale JCO.PoolManager Objekt verwaltet alle Pools und kann mit der Methode getClientPoolManager() der Klasse JCO aufgerufen werden. Die Methode getPool() versucht einen bestimmten Pool (-namen) aufzurufen. Wenn kein solcher Pool existiert (Rückgabewert null), wird im nächsten Schritt ein neuer Pool angelegt.

Syntaxdokumentation
Klassen

 

 

JCO.Pool

JCO.PoolManager

Pool Name definieren

 

static final String POOL_NAME = “Pool“;

 

Existiert der Pool schon?

 

JCO.Pool pool = JCO.getClientPoolManager ().getPool (POOL_NAME);

if (pool == null)   {

 

 

Weiteren Informationen

Informationen zum weiteren Vorgehen finden Sie hier:

·         Connection Pool anlegen

·         Verbindung anfordern und freigeben

Das komplette Beispielprogramm zum Erstellen eines Connection Pools:

·         Beispielprogramm Connect2

 

 

Ende des Inhaltsbereichs