Результат истечения срока действия узла кластера infinispan не соответствует официальному описанию документации - PullRequest
0 голосов
/ 22 апреля 2019

Когда я тестировал метод истечения срока действия кеша узла кластера infinispan, я обнаружил, что, когда узел достиг максимального времени простоя, он не получит «последний раз, когда к записи обращаются» от других узлов в кластере, но сразу сделает недействительной запись кэша узла. Например: я запустил два узла A и B и установил максимальное время простоя кэша равным 10 с. В начале теста я отправил запрос в узел A для доступа к записям базы данных и записи записей базы данных в кэш. В это время Узел A синхронизирует кэш данных с Узлом B. Затем в 5 секунд я получил доступ к записи кэша в Узле A, а затем в Узле B через 10 секунд. Я обнаружил, что запись в кэше на узле B недействительна, узел B извлек записи базы данных из базы данных, записал кэш и синхронизировался с другими узлами вместо того, чтобы рассматривать кеш как действительный.

Почему он отличается от описания в документе? http://infinispan.org/docs/stable/user_guide/user_guide.html#expiration_details

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

Configuration C = new ConfigurationBuilder()
    .expiration().enableReaper(). wakeUpInterval(50000L).maxIdle(10000l).build();

1 Ответ

2 голосов
/ 23 апреля 2019

Похоже, вы используете старую версию Infinispan.Максимальное время простоя на уровне кластера не было введено до 9.3 в https://issues.jboss.org/browse/ISPN-9003. Если эта проблема все еще сохраняется с 9.3 или новее, вы можете зарегистрировать ошибку в https://issues.jboss.org/projects/ISPN.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...