Description
Right now, when you fill up all alternate (variant) slots for a URL, we seemingly evict a "random" object out of the cache. This could for example be the most commonly retrieved object. This behavior can easily lead to excessive cache churning.
We've tossed around ideas of using the RAM cache LRU information to help with cache evacuation. Maybe as an extension (maybe easier?) to that we could leverage information from the RAM cache LRU to decide which of the existing alternates, if any, is best to throw away. For example, if 2 out of 3 existing alternates are also in the RAM cache, it would make sense to replace the 3rd one that is only on the disk cache.
This gives us a poor mans LRU implementation for the cache alternates as well.