In my application I'm using absolute expiration for a cache entry:
HttpContext.Cache
.Insert (cacheKey, true, null, DateTime.UtcNow.AddMinutes (3), TimeSpan.Zero,
CacheItemPriority.Default, SomeCallbackFunction);
Everything is working more or less fine except that the expiration does not always happen precisely after 3 minutes but often about 20 seconds too late. I've been wondering, is any kind of precision guaranteed for cache entries? Is it something that can be configured in IIS or elsewhere? Anything else that can influence the precision?
I'm running 2008 R2 with IIS 7.5 (not the development server).
UPDATE: Linking to another question where a good answer has been given: Changing frequency of ASP.NET cache item expiration?