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