Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Impressive how few code changes they managed to convert an existing LRU library into SIEVE.
https://github.com/cacheMon/lru-rs/commit/1c45ef7fe85f4a4395...
Made also a JS implementation based on the golang one here: https://github.com/kurtextrem/js-sieve. It's a bit different than your reference implementation.
Oh, thank you! I didn't realize that LRU Maintainer Thread was more than an expiration reaper. When it was first being introduced that was its first responsibility as lazy expiration removal by size eviction meant dead entries wasted capacity. It was all work in progress when I had read about it [1] and talked to dormando, so it got fuzzy. The compat code [2, 3] might have also thrown me off if I only looked at the setting and not the usage. Its a neat variant to all of these ideas.
[1] https://github.com/memcached/memcached/pull/97
https://github.com/1a1a11a/libCacheSim/blob/develop/libCache...