Add Tiny LFU Cache Admission Policy to Cache
mangalaman93 opened this issue · comments
Existing Implementation Reference: https://github.com/dgryski/go-tinylfu
Reference Paper: https://drive.google.com/file/d/1xW69zyULqcPf63A-cLdNsNOVrr8QygOr/view?usp=sharing
HashDoS protection:
https://github.com/ben-manes/caffeine/blob/91eec88be93f16549ce82dd2f17959fd8eba75dd/caffeine/src/main/java/com/github/benmanes/caffeine/cache/BoundedLocalCache.java#L749-L773
W-TinyLfu (simulator):
https://github.com/ben-manes/caffeine/blob/master/simulator/src/main/java/com/github/benmanes/caffeine/cache/simulator/policy/sketch/WindowTinyLfuPolicy.java
I'm not sure if @karlmcguire is involved in this effort, but he's been cranking out a nice looking implementation. Lots more to do (e.g. adaptivity) but fyi if disjoint work.