Как получить справочные данные в архитектуре микросервисов? - PullRequest
0 голосов
/ 09 апреля 2019

Мы переводим монолитное приложение на микросервисную архитектуру и стремимся идти по безсерверному пути. На AWS lambda мы разработали независимые сервисы, а пользовательский интерфейс написан на Angular.

Есть некоторые справочные данные (из внешнего источника), и нам нужны предложения о том, как лучше выбрать эти данные.

Например: мы должны отобразить данные сотрудника, и мы получаем идентификаторы сотрудников из службы. Чтобы отобразить имена сотрудников на основе идентификаторов, мы должны позвонить во внешний источник. Аналогично для названий компаний и т. Д.

Пока у нас есть два подхода. Каковы плюсы и минусы? Есть ли другой подход, который мы должны рассмотреть?


Подход 1. Мы выполняем эту услугу (наш микросервис) для вызова службы (внешний источник) на уровне обслуживания (лямбда AWS) и возвращаем полный желаемый результат в пользовательский интерфейс для отображения.

Подход 2. Мы возвращаем идентификаторы сотрудников в пользовательский интерфейс, и Angular UI вызывает внешний источник для отображения данных в нужном формате (отображаемые имена и описания компаний).

1 Ответ

0 голосов
/ 09 апреля 2019

С точки зрения лучших практик микросервисов, первый подход лучше.Вам будет предоставлена ​​услуга с целью обработки всех данных, которые вам необходимо отправить клиенту.Это может быть выборка данных извне или из других служб, но вы хотите, чтобы работа с данными была централизованной, чтобы клиент не зависел от разных служб.

...