Как приложения уведомляются Gemfire

В веб-приложении, которое использует Gemfire для хранения своего сеанса (Spring Session - реализация HTTPSession), как Gemfire уведомляет об изменениях (например, об истечении срока действия кэша, изменении кэша, уничтожении кэша... событиях)? особенно когда Gemfire развернут в модели клиент-сервер или одноранговой модели и т. д. событие может быть запущено на каком-либо одном узле во всей распределенной среде, возможно, мы не захотим продолжать слушать все узлы... и т. д.

Я вижу, что Gemfire имеет MBeans, который отправляет уведомления, должно ли наше приложение перехватывать прослушиватели этих уведомлений MBean или есть какой-то другой лучший способ?

Цель состоит в том, чтобы поместить некоторый код очистки во время таких событий.

1 ответ

Решение

Вы можете использовать подход модели приемника событий GemFire, при котором каждый узел будет прослушивать события (poll - sorta), вместо того, чтобы исходный "толкать" каждый узел. в GemFire, посмотрите на ContinuousQueryListener ( Пример интеграции Spring или Spring Data GemFire ​​docs), чтобы вы могли подписаться на события.

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