Java 8 здесь. Есть ли способ с помощью структуры кеширования Caffeine (или любой другой совместимой с JSR-107 структурой для этого имеет значение) получать уведомления, когда запись вытесняется из кеша?
Может какая то EvictionEventListener
что ли?
public class MyEvictionListener implements EvictionEventListener<String> {
@Override
public void onEvictionEvent(EvictionEvent eviction, String key) {
// Now I have access to the String "key" that was evicted and
// some information surrounding the eviction and I can do
// whatever I want with this information....
}
}
Есть ли что-нибудь подобное в Caffeine, Guava, Hazelcast (в основном "JVM cache land") и т. д.?
guava
имеетLoadingCache
сremovalListener
, если вам интересно - person Eugene   schedule 25.07.2018EntryEvictedListener
дляIMap
распределенной карты. Подробнее см. Здесь: docs.hazelcast.org/docs/latest/manual/html-single/ - person Alparslan Avci   schedule 26.07.2018RemovalListener
(стиль гуавы), так и синхронныйCacheWriter
. Но JCache довольно ограничен в том, что он предлагает, и ограничивает вас доCacheEntryListener
. - person Ben Manes   schedule 26.07.2018