Ausgabezwischenspeicherung und Cacheprofile

Letzte Änderung: Montag, 27. September 2010

Gilt für: SharePoint Server 2010

Inhalt dieses Artikels
Vorteile und Nachteile der Ausgabezwischenspeicherung
Cacheprofile
Verfahren

Microsoft SharePoint Server 2010 verwendet systemeigene Zwischenspeicherungstechnologie von ASP.NET um zu verwalten, wann und wie Seiteninhalte bereitgestellt werden. Die Ausgabezwischenspeicherung von ASP.NET bildet die Grundlage der Zwischenspeicherungsfunktion von SharePoint Server 2010. Die Ausgabezwischenspeicherung in SharePoint Server 2010 verhält sich daher ähnlich wie die Ausgabezwischenspeicherung in ASP.NET.

Auf SharePoint Server 2010-Websites mit starkem Zugriff kann die Zwischenspeicherung von häufig aufgerufenen Seiten für eine Minute zu deutlichen Durchsatzverbessrungen führen. Während eine Seite vom Ausgabecache zwischengespeichert wird, werden nachfolgende Anforderungen der Seite vom Ausgabecache bereitgestellt, ohne dass für die festgelegte Dauer des Caches der Code ausgeführt wird, der die Seite erstellt hat.

Vorteile und Nachteile der Ausgabezwischenspeicherung

Bevor Sie sich für die Verwendung der Ausgabezwischenspeicherung zur Verbesserung des Seiten- und Seitenelementrenderings entscheiden, sollten Sie sich mit den Vor- und Nachteilen der Implementierung der Ausgabezwischenspeicherung vertraut machen. In diesem Dokument werden nicht alle Aspekte aufgeführt, es ergeben sich jedoch unter anderem die folgenden Vorteile:

  • Jede äquivalente Klasse des Inhalts (beispielsweise eine Seite oder ein Element auf einer Seite) erhält eine schnellere Antwort, nachdem sie erstmals gerendert wurde, wodurch sich die Latenz verringert.

  • Jeder Server benötigt geringere CPU-Zeit und weniger Energie, um die gleiche Seite nach dem ersten Rendering bereitzustellen.

  • Jede Datenquelle für die gerenderte Seite kann aufgrund des verringerten Datenverkehrs, der durch die Ausgabezwischenspeicherung ermöglicht wird, für die Bedienung von mehr Webclients skaliert werden.

  • Für jede Seitenanforderung, für die eine zwischengespeicherte Version einer Seite bereitgestellt wird, muss der Server die folgenden Aufgaben nicht mehr ausführen:

    • Roundtrips zur Datenbank ausführen, um den Quellcode für die ASPX-Seite und alle ASPX-Steuerelemente auf der Seite abzurufen

    • Steuerelemente erneut laden und rendern

    • Erforderliche Datenquellen für die Steuerelemente erneut abfragen

Bevor Sie sich für die Implementierung der Ausgabezwischenspeicherung entscheiden, sollten Sie die folgenden Nachteile beachten:

  • Die Ausgabezwischenspeicherung benötigt zusätzlichen Speicher. Jede Version einer Seite belegt Speicher auf dem Webclient.

  • Bei der Verwendung mit mehreren Front-End-Servern kann sich die Ausgabezwischenspeicherung nachteilig auf die Konsistenz auswirken. Sie können in einem Cacheprofil festlegen, das nicht für jede Anforderung nach Aktualisierungen gesucht werden soll und beispielsweise festlegen, dass Änderungen der Webseitenversion im Ausgabecache für 60 Sekunden nach der Aktualisierung der Originalseite ignoriert werden. Wenn Sie in Ihrer Topologie zwei Front-End-Server besitzen, könnte ein Leser des Websiteinhalts in Abhängigkeit von dem für die Weiterleitung von Benutzeranforderungen verwendeten Lastausgleichs Inkonsistenzen feststellen, wenn die Seite von einem Server gerendert wird, und anschließend innerhalb dieses Fensters von 60 Sekunden eine weitere Anforderung an einen zweiten Server weitergeleitet wird.

Cacheprofile

SharePoint Server 2010 verfügt über einen präziseren Mechanismus für die Anpassung des Ausgabecaches als die systemeigene Version in ASP.NET 2.0. SharePoint Server 2010 besitzt Cacheprofile, bei denen es sich um Cacheeinstellungen im Listenformat handelt, die benannt und auf Seiten, Seitenelemente, Inhaltstypen und Skalierungsebenen angewendet werden können.

Durch die Verwendung von Cacheprofilen können Sie die auf die Ausgabezwischenspeicherung angewendete Granularität steuern. Sie können zulassen oder untersagen, dass Websitebesitzer und Administratoren ihre eigenen Cacheprofile auswählen und diese flexibel auf Seitenlayouts anwenden. Darüber hinaus können Sie die Ausgabezwischenspeicherung auf der Websitesammlungsebene, der Websiteebene und der Seitenlayoutebene ausführen.

Sie können das Zwischenspeicherungsverhalten von den Zugriffsrechten eines Benutzers für eine Website abhängig machen. Angenommen, Sie haben drei Gruppen definiert: eine mit vollständigen Zugriffsrechten, eine mit Lese- und Schreibrechten und eine nur mit Leserechten. Die Ausgabezwischenspeicherung rendert die Seite für alle Benutzer mit den gleichen Rechten auf die gleiche Weise. In den von SharePoint Server 2010 standardmäßig bereitgestellten Cacheprofilen rendert das Zwischenspeicherungssystem die Seite einmal pro Gruppe der Benutzerzugriffsrechte und führt anschließend eine Zwischenspeicherung des resultierenden HTML-Stroms aus. Der nächste Benutzer mit den gleichen Zugriffsrechten erhält den Strom aus dem Cache.

Nachdem Sie ein Cacheprofil erstellt und bereitgestellt haben, wirken sich alle Änderungen an dem Cacheprofil unverzüglich auf alle entsprechenden Inhalte dieser Website aus. Wenn beispielsweise alle Seitenlayouts der Dokumentbibliothek in einer bestimmten Websitesammlung zunächst für 60 Sekunden zwischengespeichert werden und diese Dauer auf 120 Sekunden erhöht wird, werden alle Seitenlayouts der Dokumentbibliothek in dieser Websitesammlung für 120 Sekunden zwischengespeichert, unabhängig von der Anzahl der Seitenlayouts der Dokumentbibliothek oder Websites in der Websitesammlung.

Sie können ein Cacheprofil definieren, indem Sie das in einer SharePoint Server 2010-Standardliste gespeicherte Cacheprofil verwenden und dieses unter Verwendung eines VaryByCustom-Handlers programmgesteuert erweitern. Wenn Sie das Cacheprofil über die Benutzeroberfläche auf das Website- und Seitenlayout anwenden, erfordert die Downlevelbereitstellung Konsistenz der untergeordneten Websites. Die Cacherichtlinie wird unabhängig von anderen SharePoint Server 2010-Features gesichert.

HinweisHinweis

Weitere Informationen zum Erstellen von Cacheprofilen auf diese Weise finden Sie unter Vorgehensweise: Erweitern der Zwischenspeicherung mithilfe des VaryByCustom-Ereignishandlers. Dort wird die Erstellung eines VaryByCustom-Ereignishandlers erläutert, die Änderung eines Cacheprofils für die Einfügung eines benutzerdefinierten Zeichenfolgenparameters, der an VaryByCustom übergeben wird sowie die Hinzufügung des erforderlichen Codes zur Datei global.asax.

Verfahren

So aktivieren Sie die Ausgabezwischenspeicherung für eine Websitesammlung

  1. Navigieren Sie zur Stammwebsite der Websitesammlung. Klicken Sie im Menü Websiteaktionen auf Websiteeinstellungen.

  2. Wählen Sie im Abschnitt Websitesammlungsverwaltung die Option Ausgabecache der Websitesammlung aus.

  3. Um die Ausgabezwischenspeicherung für diese Websitesammlung zu aktivieren, klicken Sie auf Ausgabecache aktivieren.

  4. Wählen Sie aus der Liste Cacheprofil für anonyme Benutzer ein Cacheprofil für anonyme Benutzer aus. Dieses Profil wird angewendet, wenn anonyme Benutzer auf diese Website in der Websitesammlung zugreifen.

  5. Wählen Sie aus der Liste Cacheprofil für authentifizierte Benutzer ein Cacheprofil für authentifizierte Benutzer aus. Dieses Profil wird angewendet, wenn authentifizierte Benutzer auf diese Website in der Websitesammlung zugreifen.

  6. Wählen Sie die Optionen für Richtlinie für den Seitenausgabecache aus:

    • Wenn Veröffentlichungswebsites ein anderes Ausgabecacheprofil verwenden können, wählen Sie Veröffentlichungssites können ein anderes Seitenausgabe-Cacheprofil verwenden aus.

    • Wenn Seitenlayouts ein anderes Ausgabecacheprofil verwenden können, wählen Sie Seitenlayouts können ein anderes Seitenausgabe-Cacheprofil verwenden aus.

  7. Wenn auf Seiten in dieser Websitesammlung zusätzliche Cacheinformationen angezeigt werden sollen, einschließlich des Datums und der Uhrzeit, zu denen die Seitenlayouts zuletzt gerendert wurden, wählen Sie Debugcacheinformationen auf Seiten anzeigen aus.

  8. Klicken Sie auf OK.

So aktivieren Sie die Ausgabezwischenspeicherung für eine Website

  1. Navigieren Sie zur Stammwebsite der Websitesammlung. Klicken Sie im Menü Websiteaktionen auf Websiteeinstellungen.

  2. Wählen Sie im Abschnitt Websitesammlungsverwaltung die Option Websiteausgabecache aus.

  3. Wählen Sie eine Option für Cacheprofil für anonyme Benutzer aus:

    • Wenn eine Cacheprofil geerbt werden soll, klicken Sie auf Erben.

    • Wenn Sie ein Cacheprofil aus den zurzeit verfügbaren Profilen auswählen möchten, klicken Sie auf Seitenausgabe-Cacheprofil auswählen.

  4. Wenn diese Einstellungen auf alle Unterwebsites dieser Stammwebsite angewendet werden sollen, klicken Sie auf Diese Einstellungen auf alle Unterwebsites anwenden.

  5. Klicken Sie auf OK.

So erstellen Sie ein neues Cacheprofil

  1. Navigieren Sie zur Stammwebsite der Websitesammlung. Klicken Sie im Menü Websiteaktionen auf Websiteeinstellungen.

  2. Wählen Sie im Abschnitt Websitesammlungsverwaltung die Option Cacheprofile für die Websitesammlung aus.

  3. Klicken Sie auf Neu.

  4. Definieren und erstellen Sie ein neues Cacheprofil.

    Tabelle 1. Detailbeschreibung des Cacheprofils

    Detail

    Beschreibung

    Titel

    Erforderlich. Der Systemname dieses Cacheprofils.

    Anzeigename

    Füllt die Liste der verfügbaren Cacheprofile für Websitebesitzer und Seitenlayoutbesitzer aus.

    Anzeigebeschreibung

    Füllt die Liste der verfügbaren Cacheprofile für Websitebesitzer und Seitenlayoutbesitzer aus.

    ACL-Überprüfung ausführen

    Auswählen, um sicherzustellen, dass alle Elemente im Cache sicherheitsoptimiert sind.

    Aktiviert

    Auswählen, wenn die Zwischenspeicherung ausgeführt werden soll.

    Dauer

    Anzahl der Sekunden, die die zwischengespeicherte Version verfügbar sein soll.

    Auf Änderungen überprüfen

    Aktivieren, um bei jeder Seitenanforderung zu überprüfen, dass sich die Website nicht geändert hat und um den Cache zu leeren, wenn sich die Website ändert.

    Für bessere Leistung deaktivieren. Wenn die Option deaktiviert ist, überprüft das System für die unter Dauer angegebene Anzahl der Sekunden nicht, ob die Website aktualisiert wurde.

    Benutzerdefinierte Parameter verschieden

    Geben Sie einen Wert entsprechend der Beschreibung in der Dokumentation für die ASP.NET- HttpCachePolicy.SetVaryByCustom-Methode an.

    Unterscheidung nach HTTP-Headern

    Geben Sie einen Wert entsprechend der Beschreibung in der Dokumentation für die ASP.NET-HttpCachePolicy.VaryByHeaders-Eigenschaft ein.

    Unterscheidung nach Abfragezeichenfolgeparametern

    Geben Sie einen Wert entsprechend der Beschreibung in der Dokumentation für die ASP.NET-HttpCachePolicy.VaryByParams-Eigenschaft ein.

    Unterscheidung nach Benutzerrechten

    Aktivieren, um sicherzustellen, dass Benutzer identische effektive Rechte für alle SharePoint-Sicherheitsbereiche besitzen müssen, um die gleiche zwischengespeicherte Seite angezeigt zu bekommen wie alle anderen Benutzer.

    Cachefähigkeit

    Wählen Sie einen Wert aus der Dropdownliste aus. Die folgende Auswahl steht zur Verfügung: NoCache, Private, Server, ServerAndNoCache, Public und ServerAndPrivate. Weitere Informationen finden Sie im Thema ASP.NET-HttpCacheability-Enumeration.

    Sicher für authentifizierte Verwendung

    Nur für Richtlinien aktivieren, die Administratoren und Seitenlayoutdesigner für Authentifizierungsszenarien anwenden dürfen.

    Schreibern erlauben, zwischengespeicherten Inhalt anzuzeigen

    Aktivieren, um das Standardverhalten zu umgehen, nach dem Personen mit Bearbeitungsrechten ihre Seiten nicht zwischenspeichern dürfen.

Siehe auch

Konzepte

Benutzerdefinierte Zwischenspeicherung (Übersicht)

Zwischenspeichern von Objekten

Datenträgerbasiertes Zwischenspeichern für BLOBs (Binary Large Objects)

Weitere Ressourcen

ASP.NET Page Output Caching, Part 1