Project Description
The MOSS 2007 Farm-Wide BLOB Cache Flushing Solution (or BlobCacheFarmFlush) provides SharePoint site collection administrators with a UI-based mechanism to flush the contents of MOSS publishing site BLOB cache folders (or disk based cache) on all servers in a farm at once.

Additional Detail
For additional information on the MOSS 2007 BLOB cache, see MSDN's "Caching in Office SharePoint Server 2007" page. If details regarding the internals of the BLOB cache and its operation are desired, see my blog post on the topic.

Significant additional detail for this project can be found in the PDF that accompanies the solution package (WSP) download (BlobCacheFarmFlush Solution.pdf). This includes a basic overview of how BLOB caching works, how a farm-wide flush is carried out, how the BlobCacheFarmFlush solution itself works, solution packaging information, and some key design details.

Target Audience
Site administrators for MOSS 2007 publishing sites who meet the following criteria:
  • their publishing sites are served-up by more than a single server (typically in a load-balancing scenario)
  • authenticated access to one or more zones on their publishing sites is difficult or simply not possible (important because OOTB per-server BLOB cache flushing is zone-specific)
  • they desire the ability to flush disk-based caches (or BLOB caches) on all servers at once with a minimum of hassle
Though MOSS includes support for BLOB cache flushing, a flush request impacts only a single server; that is, the server that receives the flush request from the UI. Attempting to flush BLOB caches on multiple servers at once within a multi-server farm environment in this fashion (that is, one server at a time) can be, at a minimum, rather challenging.

The following screenshot shows the admininstration page that is added to the list of Site Collection Administration options for publishing sites that reside within a web application where the BlobCacheFarmFlush solution has been installed and activated.
Site collection administration page

I believe in loudly calling out those who helped me -- whether they realize they did so or not. Without the contributions the following folks have made to the SharePoint community, my work in developing this solution would have taken much longer and have been significantly more painful:
  • Maxime Bombardier: for providing analysis and breakdown on farm-wide BLOB flushing operations; the core of this solution is based around her work.
  • Andrew Connell: for explaining and documenting the mechanics behind SharePoint timer jobs.
  • Scot Hillier: for additional detail and insight regarding the lock types associated with SharePoint timer jobs.
  • Carsten Keutmann: for WSPBuilder and its associated extensions -- it's hard to find a bigger productivity booster when it comes to SharePoint solution development.
  • Steve Pietrek: for sharing his SharePoint timer job presentation and insights he gained along the way.
  • Ton Stegeman: for relaying his findings pertaining to redirects that are issued through the SPUtility type.
  • Jan Tielens: for some nicely written coverage on how to wire LAYOUTS pages into the navigation hierarchy for breadcrumb support.
  • Vincent Rothwell: for confirmation that I was on the right trail; I discovered his blog post as I was halfway through my own changes for v1.0.2.

Last edited Aug 4, 2009 at 11:33 AM by spmcdonough, version 12