SharePoint Disk Based Blob Cache
Wir implementieren gerade eine SiteCollection in einem Portal in dem es darum geht Video’s die aus einer Document Library kommen in einem Flash Movie darzustellen. Um die Performance und die Wartbarkeit zu halten haben wir folgende Dinge eingerichtet:
- Eigene ContentDB
Wir haben die SiteCollection über STSADM angelegt und einer leeren ContentDB auf dem SQL Server zugewiesen. Anschließend haben wir die ContentDB im Central Admin "Offline" genommen, so das die Datenbank nur für Video Content genutzt wird. Für den Backup Prozess kann man so einen anderen Schedule hinterlegen, da hier nicht so viel "Bewegung" existiert und es primär um grosse Dateien geht. - Upload Limit erhöhen
Die Konfiguration wird Leider für die gesamte WebApplication vorgenommen. Sollte es also nötig sein, dass nur die neue SiteCollection von dem Limit beroffen ist, dann würde eine eigene Application benötigt, was den Aufwand natürlich deutlich erhöht.

- Disk Based Blob Cache einschalten
Hier ist der Artikel von MS:
MSDN: Disk-based Caching for Binary Large Objects
Technet: Caching in Office SharePoint Server 2007
EMC Team Blog: How can I make my web site faster with caching?
So sieht unsere Web.Config dann auf den beiden WFE Servern aus:
<BlobCache
location="D:MOSS-BlobCache"
path=".(flv)$"
maxSize="1"
max-age="86400"
enabled="True" />
Im Moment werden also nur Flash Videos für 24 Stunden mit einer gesamt Cachegröße von 1 GB gecached.
Das erzielte Ergebnis hilft zum einen die Datenbank zu entlasten, sendet allerdings auch gleich an den Client per HTTP-Header die folgenden Cache Control einstellungen:
Cache-Control: public, max-age=86400
Somit würde auch der Client erst in 24 Stunden nach einem neuen File fragen. Die Konsequenz ist also das egal, ob ich den Cache leere oder den Content auf dem Server austausche, der Client würde bei korrekter einstllung erst in 24 Stunden nach einem neuen File fragen. Ich hatte schon Situationen, wo so etwas zu Problemen geführt hat. Eventuell setzen wir den Cache auf 15 Minuten, was die Server bei vielen gleichzeitigen Zugriffen noch immer deutlich unterstützt, aber bei einem fehlerhaften File (Video) den nötigen Spielraum für ein kurzfristiges Update schafft.
Sollte man in die verlegenheit kommen den Cache früher wieder los werden zu wollen, dann gibt es diese folgende potentielle Möglichkeiten:
- STSADM
stsadm -o setproperty -propertyname blobcacheflushcount -propertyvalue 11 -url http://mywebapp:port - SiteSettings – Site Collection Administration – Site collection object cache
Achtung: Diese Aktion muss für jeden Zone auf der eine Applikation "Extended" wurde durchgeführt werden. Sollte zum Beispiel also noch ein HTTPS Site mit laufen, müßte das auch dort gemacht werden. - del *.*
Einfach aud den WFE Servern den Verzeichnisinhalt löschen und ein IISRESET durchführen
Ciao Marco
Comments are currently closed.