У меня есть два кластера gemfire (версия 8.2) (отправитель и получатель), подключенные через WAN. Кластер отправителя получает данные из БД и передает записи получателю через шлюз WAN, пока оба кластера не будут подключены к сети. Иногда несколько узлов кеша из кластера Receiver выходят из строя из-за проблем со средой, которые вызывают потерю данных в кластере Receiver и влияют на моих подключенных к нему клиентов. Мы используем gemfire-toolkit для передачи всех данных от отправителя к получателю в случае почти все данные отсутствуют, но это решение не подходит, если в кластере Receiver мало данных.
У меня есть требование, чтобы, если мой клиент, подключенный к кластеру получателя, ищет запись, которая недоступна в кеше, я хочу загрузить эту запись из кластера отправителя на лету. Также я не могу полагаться на шлюз-отправитель, поскольку он будет передавать данные асинхронно в соответствии с настроенным интервалом времени пакетной обработки.
Я думаю открыть конечную точку RESTful в кластере отправителя и настроить загрузчик кеша в получателе для вызова этой конечной точки, получения данных и помещения в кластер.
Могу ли я как-нибудь попросить кластер отправителя передать требуемую запись получателю синхронно или немедленно, не подвергая какой-либо веб-службе. Или есть какое-нибудь другое лучшее решение, которое кто-нибудь может предложить мне изучить?