Blob Caching and Web Gardens

I've had a case open for a long time in regards to blob caching not functioning properly under MOSS SP1.   Why SP1?  Because we only noticed the problem occuring after SP1 was installed, and the header information (see an earlier post) appeared to indicate that post-SP1 the problems were occuring.

One of the really switched on Australian escalation engineers, who doesn't even specialise in sharepoint, cottoned onto this and figured out that blob caching will not work with web gardens. 

Once you actually know this, its easy to google or livesearch for "blob caching web garden" and find a couple of items, including a technet article on why this happens.

Web garden settings

Web garden settings can also inadvertently cause the BLOB cache to work inconsistently. Because only one process can acquire the lock necessary to manage the cache, successful use the cache depends on which thread services a request. If a Web garden that does not have the BLOB cache lock services a request, the content it sends in response will not have caching directives associated with it. That increases both the number of requests and the amount of the data sent over the network. Therefore, if you intend to use the BLOB cache, you should not use Web gardens.

So now theres a bit of a trade off.  Do you want to have multiple worker processes serving your content?  or would you rather cache your large objects on your local filesystem instead of retrieving them from an SQL server repeatedly?  Thats not going to be easy to answer and its really going to depend on the situation.  I'd suggest if your backend is the bottleneck to your farm, then blob caching would be the most valueable.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: