#lru-cache #cache #lru

dynamic-lru-cache

LRU Cache that only stores items recently seen more than once

3 unstable releases

0.2.1 Oct 9, 2023
0.2.0 Nov 28, 2021
0.1.0 Nov 24, 2021

#196 in Caching

MIT/Apache

19KB
329 lines

dynamic-lru-cache

License Cargo Documentation

A simple LRU cache for Rust that only caches items it has seen at least once before. The size of its internal memory is adjustable.

Why?

I didn't want to use a fixed cache size when I expect that most data will not be fetched twice, and that most of the time the number of items benefit from caching will be small. Good use cases: parsing large data structures that frequently cross-reference the same data chunk, reading a set of dictionary-compressed files where there are several different but shared dictionaries, reading many files that all refer to shared parser profiles (eg. color profiles in images), etc.

Sure, a fixed size cache that stores "seen once" items would also work, but the memory usage would be higher than really necessary. Hence, this crate.

No runtime deps