SQL-Anweisungen aus Webanwendungen mit gemeinsam genutzter Datenquelle erfassen

Wenn mehrere Webanwendungen eine Datenquelle gemeinsam nutzen, können Sie Clientoptimierungseigenschaften festlegen, die für jede Anwendung spezifisch sind.

Informationen zu diesem Vorgang

Wenn Sie für eine Anwendung anwendungsspezifische Eigenschaften festlegen, die Eigenschaften modifizieren, SQL-Anweisungen erfassen, pureQueryXML-Dateien konfigurieren oder SQL binden, unterbrechen Sie nicht die anderen Anwendungen, die die Datenquelle gemeinsam nutzen. Sie können auch eine dieser Aktionen für mindestens zwei dieser Anwendungen gleichzeitig ausführen, ohne dass es zu Kollisionen zwischen den Aktionen für eine Anwendung mit den Aktionen für die andere Anwendung kommt, es sei denn, mindestens eine Anwendung ist von dem vom Anwendungsserver ausgeführten Caching für Anweisungen abhängig.

Wenn Sie die Clientoptimierungseigenschaften modifizieren, die für eine Anwendung spezifisch sind, brauchen Sie den Anwendungsserver, der alle Anwendungen ausführt, nicht erneut zu starten. Stattdessen können Sie nur die eine Anwendung erneut starten.

Wenn Sie jedoch Eigenschaften modifizieren, die in einer pdq.properties-Datei enthalten oder für ein Datenquellenobjekt festgelegt sind, müssen Sie den Anwendungsserver erneut starten. Eigenschaften, die Sie in diesen Speicherposition festlegen können, sind diejenigen, die Festlegen, wie pureQuery Fehlernachrichten für die Clientoptimierung protokollieren soll. Informationen zum Festlegen von Eigenschaften in diesen Speicherpositionen finden Sie in Vorgehensweise beim Festlegen von Eigenschaften für die Clientoptimierung .

Vorgehensweise

Beispiel

Angenommen zwei Webanwendungen – Anwendung1 und Anwendung2 – werden unter WebSphere Application Server ausgeführt. Sie wollen die Clientoptimierung für beide Anwendungen konfigurieren, damit Sie SQL-Anweisungen in Anwendung1 dynamisch und in Anwendung2 statisch ausführen können.

Anwendung1 verwendet zwei Datenquellen: OrdersDS und ItemsDS. Anwendung2 verwendet ebenfalls eine dieser Datenquelle, nämlich: OrdersDS.

Die folgenden Schritte zeigen, wie eine einfache Konfiguration ohne Protokollierung und ohne optionale Clientoptimierungseigenschaften erstellt wird.

Zum Konfigurieren und Ausführen von Anwendung1 könnten Sie wie folgt vorgehen:

  1. Geben Sie in WebSphere Application Server die angepasste Eigenschaft dataSource von IBM® Data Server Driver für JDBC und SQLJ für jede der beiden Datenquellen an.
  2. Erstellen Sie eine Eigenschaftendatei für jede Datenquelle: pdq.ItemsDS.properties und pdq.OrdersDS.properties.
  3. Legen Sie die erforderlichen Eigenschaften in allen Eigenschaftendateien fest.

    Für pdq.ItemsDS.properties verwenden Sie die folgenden Einstellungen:

    pdq.captureMode=ON
    pdq.executionMode=DYNAMIC
    pdq.pureQueryXml=App1Items.pdqxml

    Für pdq.OrdersDS.properties verwenden Sie die folgenden Einstellungen:

    pdq.captureMode=ON
    pdq.executionMode=DYNAMIC
    pdq.pureQueryXml=App1Orders.pdqxml
    Die Namen der pureQueryXML-Dateien können nach eigenen Konventionen festgelegt werden, solange die Erweiterungen entweder .pdqxml oder .xml lauten.
  4. Erfassen Sie SQL-Anweisungen.
  5. Setzen Sie in beiden Eigenschaftendateien captureMode auf OFF und executionMode auf DYNAMIC.
  6. Wenn Sie den Anweisungscache des Anwendungsservers verwenden, bereinigen Sie die Verbindungspools für beide Datenquellen. Immer wenn Sie diesen Cache verwenden und den Wert von executionMode ändern, müssen Sie den Verbindungspool bereinigen.
  7. Starten Sie Anwendung1 erneut.

Zum Konfigurieren und Ausführen von Anwendung2 könnten Sie wie folgt vorgehen:

  1. Erstellen Sie die Eigenschaftendatei pdq.OrdersDS.properties.
  2. Legen Sie die erforderlichen Eigenschaften in allen Eigenschaftendateien fest.
    pdq.captureMode=ON
    pdq.executionMode=DYNAMIC
    pdq.pureQueryXml=App2Orders.pdqxml
    Auch hier kann der Name der pureQueryXML-Datei nach Ihren eigenen Konventionen festgelegt werden. Die Erweiterung muss allerdings .pdqxml oder .xml lauten.
  3. Erfassen Sie SQL-Anweisungen.
  4. Führen Sie das Dienstprogramm Configure für die pureQueryXML-Datei aus, um die DB2Pakete einzurichten, die Sie erstellen wollen.
  5. Führen Sie das Dienstprogramm StaticBinder für die pureQueryXML-Datei aus, um DB2-Pakete aus den erfassten SQL-Anweisungen zu erstellen.
  6. Setzen Sie in der Datei pdq.OrdersDS.properties den Erfassungsmodus (captureMode) auf OFF und den Ausführungsmodus (executionMode) auf STATIC.
  7. Wenn Sie den Anweisungscache des Anwendungsservers verwenden, bereinigen Sie den Verbindungspool für die Datenquelle. Immer wenn Sie diesen Cache verwenden und den Wert von executionMode ändern, müssen Sie den Verbindungspool bereinigen.
  8. Starten Sie Anwendung2 erneut.

Feedback