Infinispan: Как получить уведомление, когда запись исключена из бэк-файлов SingleFileStore

Стандартное событие вытеснения срабатывает, когда запись в кеш исключается из кеша в памяти. В нашем случае нам нужно уведомление только тогда, когда оно удалено из постоянного перезапуска дискового кэша, который настроен как SingleFileStore. Это вообще возможно?

Мы используем Infinispan в качестве локального кэша, поэтому любые соображения по поводу кластеризации для нас являются спорными.

Наша конфигурация кэша выглядит следующим образом:

    manager.defineConfiguration("eviction-test-cache", new ConfigurationBuilder()
            .persistence().addSingleFileStore().location("eviction-test")
                .maxEntries(500).preload(true).purgeOnStartup(false)
            .eviction().strategy(LRU).maxEntries(100L)
            .build());

2 ответа

Это было добавлено к: https://developer.jboss.org/message/935198

Чтобы процитировать мой ответ оттуда:

Здесь maxEntries=500 относится только к SingleFileStore и удаляет записи без уведомлений, поскольку это выходит за рамки обычной области выселения. Если вы хотите, вы можете создать улучшенную JIRA, чтобы добавить какое-то уведомление специально для SingleFileStore (хотя я не совсем уверен, как это будет выглядеть). Другой вариант заключается в том, что вы можете использовать новое хранилище файлов мягкого индекса [1], которое можно получить в [2] (в этом нет проблемы сохранения каждого ключа в памяти.

[1] http://infinispan.org/docs/8.0.x/user_guide/user_guide.html

[2] http://mvnrepository.com/artifact/org.infinispan/infinispan-persistence-soft-index

Нет, с акциями это невозможно SingleFileStore,

Другие вопросы по тегам