Есть два микросервиса. Один для обслуживания учетной записи, другой для обслуживания клиентов.
Служба учета хранит такие данные, как идентификатор счета, идентификатор клиента, остаток на счете, заработанные проценты и другие денежные данные.
Служба поддержки клиентов имеет личные данные, такие как идентификатор клиента, домашний адрес, идентификатор электронной почты, частота отправки электронных писем / предупреждений, тип клиента (Premium, Gold, Silver) ... и др c.
У учетной записи есть идентификатор клиента в качестве внешнего ключа для сопоставления учетной записи и данных клиента.
Требование таково, что мне нужно создать поисковый пользовательский интерфейс память эффективная . Получить все счета, которые принадлежат к определенному типу клиента (премиум / золото) и имеют баланс более 200 $. Таким образом, если вы видите, что есть фильтр перекрестного соединения ie, фильтр должен быть применен к обоим микросервисам для получения желаемых данных. Кроме того, будет выбрано только 10 записей (размер страницы). При нажатии на следующую кнопку будут получены следующие 10 записей.
Итак, как мне получить записи / сохранить данные для этого сценария? Это своего рода вопрос дизайна / архитектуры. Я не ожидаю синтаксиса запроса или синтаксиса sql или синтаксиса гибернации (ORM).
Должен ли я получить все записи одновременно, сохранить их в памяти и затем применить фильтры вместе с нумерацией страниц , Или я должен использовать некоторые партии?
Кроме того, я не буду предпочитать SQL присоединения. Это создает зависимость. Если таблицы базы данных будут изменены, это повлияет на запрос