On Tue, 20 Jun 2017, red 888 wrote: > This doc says something about memcached I haven't read anywhere else: > Which brings me to another point, items/chunks are not actively > reclaimed/expired. Memached does not > have a background thread that explicitly expires items, reclaiming used > chunks for new items. When a > slab needs a chunk and there are no more pages, Memcache will look at the > queue tail for items to > evict. Memcache will make a best effort to evict expired items (items you've > explicitly set to expire > after some time). In scenario 1, item 2, an expired item, is evicted. > However, in scenario 2, item 1, > which has not yet expired, will be evicted, even though item 4 would seem > like the better candidate. > But since item 4 is not near the tail, Memcached stops looking and just > expires item 1. > > So what is the memcache queue tail and why can't I find much info about it? > Seems pretty important > because what he is saying is that memcache could evict a non expired item, if > it ran out of > unassigned pages, had plenty of expire items for the slab classes, but > because an expired was nearer > the "tail" (whatever that means) it evicted that one instead.
What is the problem you're trying to solve? If you run the latest version and start it with "-o modern" option, there's an LRU crawler that will reap expired items in the background. -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
