Я использую Jhipster и мне это очень нравится.
Вместо генерации моего внешнего интерфейса микросервиса, встроенного в шлюз, я хотел бы создать отдельный микросервис внешнего интерфейса .Вместо gateway -> µservice-backend
у меня будет gateway -> µservice-frontend -> µservice-backend
Мой вариант использования:
- userA имеет физическое устройство devicev1.userA входит на шлюз.Он может видеть приложение для устройства v1.
- userB имеет физическое устройство devicev2 (отличное от v1).userB входит в систему на шлюзе.Он может видеть приложение для устройства v2.(бэкэнд - это другой µservice для v1 и v2)
- userC использует виртуальное устройство.Он увидит и снова использует другой интерфейс + бэкэнд
Некоторые исследования:
Я понимаю, что эту функцию сложно поддерживать, потому что у нас будетвнедрить модуль «µservice-frontend» внутри шлюза.(А теперь есть Angular + React).
Вопрос был задан в 2016 году:
Полагаю, я все еще могу сделать это, сгенерировав приложение "только для клиента" и связав его отдельно (переписать URL), но я потеряю весь стек jhipster для мониторинга / реестра / безопасности.Ооо, я не буду этого делать и хранить все в своем шлюзе.
Я мог бы также иметь несколько шлюзов, но я был более готов иметь модули загрузки по требованию в одном приложении.
Чтобы поддерживать его в чистоте, я могу создавать различные угловые модули для своей части загрузки по требованию.Я могу использовать git mono-repo для разделения каждой версии в отдельном репозитории и компоновки перед компиляцией.Это много решений, но я бы хотел использовать более микросервисный способ.
Любое решение или передовой архитектурный опыт?
Спасибо