Моя команда и я занимаемся рефакторингом сложного унаследованного приложения ASP.NET Web Forms, в котором реализована трехуровневая архитектура.
Мне следует выбрать одну из следующих архитектур, основанных на Onion Architecture и DDD:
В настоящее время с точки зрения Миро-сервисов нет необходимости, но наш клиент сказал, что в будущем, скорее всего, понадобятся микро-сервисы (не знаю, когда, возможно, через год).
Еще один важный фактор: я должен провести рефакторинг этого приложения, не прекращая его запуск, поэтому наша стратегия заключается в том, чтобы провести рефакторинг внутренних слоев, и после этого мы будем постепенно откладывать уровень представления и использовать MVC для уровня пользовательского интерфейса.
Я лично решил применить слой Web API из-за
Применение архитектуры микро-услуг будет стоить в
будущее .
Рефакторинг слоя Presentation будет проще, если добавить Web API сейчас
и мы можем изменить это постепенно.
Я знаю, что в наши дни у нас есть только один сервис, и нет смысла иметь один API в качестве сервиса, но мы подготавливаем архитектуру miro-сервисов за небольшую плату, и на втором этапе мы можем разбить ее на отдельные miro -услуги проще.
С другой стороны, некоторые члены моей команды считают, что мы можем напрямую вызывать сервисы на уровне приложений, и было бы лучше отказаться от добавления слоя веб-API, потому что:
В настоящее время использование Web API - это пустая трата нашего времени, и нет смысла
делая это сейчас.
Итак, я решил поделиться своими соображениями, чтобы дать свою идею и принять лучшее решение.
Заранее спасибо.