Как получить данные из разных баз данных в Micro Services? - PullRequest
0 голосов
/ 08 октября 2018

В настоящее время мы используем архитектуру микроуслуг.На целевой странице нашего приложения пользователь может видеть список кампаний (сервис Campaign Micro), который связан с различными другими параметрами, такими как идентификатор купона (сервис Coupon Micro), идентификаторы страны назначения (сервис Content Management Micro), созданныйидентификатор пользователя (микро-сервис управления пользователями) и т. д., но нам нужно показывать название купона, названия страны назначения и имя пользователя, а не просто отображать идентификаторы на странице списка.

Как я могу получить все эти данныебез каких-либо задержек в исполнении?

1 Ответ

0 голосов
/ 09 октября 2018

Это всегда компромисс между доступностью и согласованностью.Получение ответа в разумные сроки является частью доступности теоремы CAP.

Если вы собираетесь внедрять микросервисы и не хотите снижать производительностьТогда вам стоит подумать о дублировании данных.Данные, необходимые для отображения этого списка, будут продублированы в базе данных, к которой имеет доступ ваша целевая страница.Но различные сервисы (например, Campaign, Coupon и т. Д.) По-прежнему будут источником правды в ландшафте вашего приложения.

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

...