Share via


HTTP-Antwortcache

von Walter Oliver

Der IIS-Ausgabecache ist ein Feature, das das Zwischenspeichern vollständiger Antworten im Arbeitsspeicher ermöglicht, auch aus dynamischen Inhalten. Im Gegensatz zu den Caches in IIS 6.0 verfügen IIS 7.0 und höher über einen „intelligenten“ Cache, mit dem Websitebesitzer und Entwickler den Ausgabecache so konfigurieren können, dass separate Kopien von Antworten basierend auf dem Abfragezeichenfolgenwert zwischengespeichert werden. Der Ausgabecache ist auch in den HTTP.sys Kernelcache integriert, der bei schneller Leistung hilft. Die Kernelzwischenspeicherung ist standardmäßig entsperrt. Entwickler können dieses Feature nutzen, indem Sie Zwischenspeicherungsprofile in ihren Anwendungen konfigurieren. Sie können ein Befehlszeilentool ausführen, das anzeigt, welche Inhalte sich im HTTP.sys-Cache befinden.

So zeigen Sie den HTTP-Antwortcache mit netsh an

  • Öffnen Sie eine Eingabeaufforderung, und führen Sie Folgendes aus:

netsh http Cache anzeigen

So aktivieren Sie die Zwischenspeicherung mithilfe des IIS PowerShell-Anbieters

  • Öffnen Sie die PowerShell-Eingabeaufforderung, und geben Sie Folgendes ein:
set-webconfigurationproperty /system.webServer/caching iis:\sites\mysite -name enabled -value true

So fügen Sie einen neuen Eintrag mithilfe des IIS PowerShell-Anbieters hinzu

  • Hinzufügen zusätzlicher Eigenschaften des Hashwerts @{...}
add-webconfigurationproperty /system.webServer/caching iis:\sites\mysite `-name profiles `-value @{extension='.tif'; policy='CacheForTimePeriod';duration='00:00:10'}

So ändern Sie die Einstellung für den Zwischenspeicherungseintrag

  • spezifischen Eintrag abrufen:
$cacheEntry = get-webconfigurationproperty /system.webServer/caching iis:\sites\mysite -atElement @{extension='.tif'}
  • Attribut ändern
$cacheEntry.Duration = [TimeSpan]::FromSeconds(10)
$cacheEntry.kernelCachePolicy = 'CacheForTimePeriod'
set-webconfigurationproperty /system.webServer/caching iis:\sites\mysite `
    -name profiles `
    -atElement @{extension='.tif'} `
    -value $cacheEntry