2016-08-22 8 views
2

Меня интересует архитектура, основанная на сервисах, свободно основанная на концепции микросервисов. Наше руководство считает, что это происходит, поскольку мы строим пакеты Nuget. Я чувствую, что есть другое, но не могу четко сформулировать ... Что такое «микросервис» или «SOA», что отличается от повторного использования пакетов Nuget?SOA по сравнению с пакетами NuGet

+1

вам придется подробно остановиться на вашей проблеме! NuGet - это технический инструмент для упаковки приложений и логики, в то время как микросервисы и SOA являются архитектурными образцами. Я не вижу корреляции или как кто-то даже попытается связать эти два! – enzian

ответ

2

Утверждение, что использование кода повторного использования NuGet - это то же самое, что и «делать». SOA немного напоминает высказывание, что использование кухонного комбайна - это то же самое, что готовить еду из трех блюд. Обработчик пищи может быть связан с результатом и полезен во время выполнения, даже становясь необходимым предварительным условием, но это не означает, что он может быть непосредственно сравнен таким образом.

Одним из способов противодействия этому виду является утверждение, что SOA вполне возможно без повторного использования кода, поэтому нет необходимости в управлении пакетами. Если вы хотите прочитать о том, что это значит для SOA, см. Еще одно сообщение моего here.

Однако я сомневаюсь, что это взгляд, который вы можете победить логическими рассуждениями. Я подозреваю, что ваше руководство действительно говорит: «SJDoodle продолжает заниматься SOA? Звучит немного дорого».

Хорошей новостью является то, что вы можете практиковать SOA, не давая никому знать, что вы это делаете. Даже если вы вынуждены создавать свое приложение в качестве монолита, вам нечего мешать создавать с микросервисами. Здесь могут быть полезны некоторые шаблоны проектирования, в том числе шаблон Ports and Adapters и шаблон Command Processor.

Об этом предписывается Мартин Фаулер written, и в некоторых случаях лучше начать этот путь, чем пытаться выполнить основанный на услугах подход с самого начала.