Net.Data Verwaltung und Programmierung für OS/2, Windows NT und UNIX

Caching einer Seite

Geben Sie an, daß von Net.Data generierte Seiten mit der integrierten Net.Data-Funktion DTW_CACHE_PAGE() in den Cache geschrieben werden sollen.

Die Funktion DTW_CACHE_PAGE() speichert die gesamte Ausgabe von der Makrodatei nach der Funktionsanweisung zwischen, nachdem sie ermittelt hat, daß die Seite nicht bereits im Cache vorhanden oder abgelaufen ist. Wenn die Seite nicht im Cache vorhanden oder älter als angegeben ist, sendet Net.Data die Ausgabe an den Browser zurück, generiert neue Ausgabeseiten von der Makroausführung und speichert die Seite im Cache.

Wenn der Cache-Manager die zwischengespeicherte Seite findet und sie weiterhin gültig ist, zeigt er den Cache-Inhalt an, und Net.Data verläßt das Makro. Durch dieses Verhalten wird sichergestellt, daß keine unnötige Verarbeitung ausgeführt wird, nachdem die Web-Seite aus dem Cache abgerufen wurde.

Hinweis zur Leistung: Stellen Sie DTW_CACHE_PAGE() als die erste bzw. eine der ersten Anweisungen in eine Makrodatei, um den Aufwand bei der Ausführung der Makrodatei zu minimieren.

Gehen Sie wie folgt vor, um eine Seite zwischenzuspeichern:

  1. Fügen Sie im HTML-Block einer Makrodatei vor der HTML-Codierung die folgende Funktionsanweisung ein:
    @DTW_CACHE_PAGE("cache_id", id_der_zwischengespeicherten_Seite, "alter",
    status)
    

    Geben Sie mit dieser Funktion an, daß Net.Data die gesamte HTML-Ausgabe vom Makro nach dieser Anweisung zwischenspeichern soll. Plazieren Sie diese Anweisung an den Anfang in der Makrodatei, wenn Sie die gesamte HTML-Ausgabe zwischenspeichern wollen.

    Parameter:

    cache_id
    Eine Zeichenfolge, die den Cache angibt, in dem die Seite gespeichert wird. Sie können Cache-IDs Makros bzw. Makrogruppen zuordnen.

    id_der_zwischengespeicherten_Seite
    Eine Zeichenfolge mit einer Kennung, mit der die zwischengespeicherte Seite in einer nachfolgenden Cache-Anforderung über @DTW_CACHE_PAGE lokalisiert wird, zum Beispiel dem URL der Seite.

    alter
    Eine Zeichenfolgevariable mit einer Zeitspanne in Sekunden, die angibt, wann eine Seite als abgelaufen betrachtet wird. Wenn sich die angeforderte Seite länger im Cache befindet als der Wert von alter angibt, führt Net.Data das Makro aus, generiert die Seite erneut und speichert die generierte Seite zwischen, wodurch die abgelaufene Seite ersetzt wird. Wenn sich die angeforderte Seite kürzer oder genau so lang im Cache befindet wie der Wert von alter angibt, ruft Net.Data die Seite aus dem Cache ab und sendet sie an den Browser. In diesem Fall beendet Net.Data die Makroausführung sofort.

    status
    Eine von Net.Data zurückgegebene Zeichenfolgevariable, die angibt, ob die Seite erfolgreich zwischengespeichert wurde oder nicht.

Beispiel:

%HTML(cache_example) {
 %IF (customer == "Joe Smith")
 @DTW_CACHE_PAGE("mymacro.d2w", "http://www.mypage.org", "-1", status)
%ENDIF
 ...
<html>

<head>
 <:title>This is the page title</title>
</head>

<body>
 <center>
 <h3>This is the Main Heading</h3>
 <p>It is $(time). Have a nice day!
</body>

</html>
 %}


[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis | Index ]