Все примеры демонстрируют примеры шаблонов услуг одного решения. Это, похоже, противоречит философии микросервисов, где вам нужна полная зависимость между вашими службами. Хотя вы можете вручную следовать этому шаблону, более распространенная практика заключается в том, чтобы обеспечить его соблюдение, сделав каждую службу собственником репозитория и решения/проекта.
Как вы управляете и развертываете сервисные сервисы и применяете контракты на обслуживание (ServiceInferfaces) с использованием нескольких решений (в нескольких хранилищах Git)?
например.
Service Fabric Solution
App1 - Customers
- Service1 [Carts] From Other Solution
- Service2 [LocationInfo]From Other Solution
- Service3 [REST WebAPI for Admin] From Other Solution
App2 - Products
- Service4 [Status]From Other Solution
- Service5 [Firmware]From Other Solution
- Service6 [Event Stream] From Other Solution
External Solution
- Service1
External Solution
- Service2
External Solution
- Service3
External Solution
- Service4
External Solution
- Service5
External Solution
- Service6
1) Как разработчик, я хочу проверить и собрать все текущие версии приложений/сервисов. Я хочу запустить проект Service Fabric, который управляет всеми манифестами, и развертывать его в моем локальном кластере dev. Я хочу использовать одни и те же сервисные интерфейсы между решениями. Я не понимаю, как вы это сделаете, потому что приложение является внешним по отношению к сервисам.
2) Как команда DevOps, я хочу автоматизировать работу с приложениями, их создание и развертывание в Azure.
Как мы "применяем" изоляцию с помощью отдельных решений, но упрощаем их совместное использование и развертывание в кластере, а также упрощаем создание конвейеров для развертывания каждого кластера, настроенного для условий DEV, QA и PROD,
Какова структура рабочего процесса/процесса/проекта, чтобы это сделать? Возможно ли это?