Azure Service Fabric и центр обработки данных Docker

Я просмотрел этот блог Azure SF vs Docker но это не полностью ответило на мои сомнения. У меня есть локальный центр обработки данных Docker, и я хочу добавить к нему Azure SF. Но я чувствую, что DDC делает то же самое, что и Service Fabric. Несколько вещей, которые пришли мне в голову.

  • DDC заботится о масштабировании, всех типах оркестрации контейнеров, мониторинге работоспособности и т. д.

Несколько предметов, которые он не предоставляет:

  • Удаленное взаимодействие между службами, публикация модели подписки между службами, уровень с отслеживанием состояния (я слышал о репутации тома portworx)

Может ли кто-нибудь просветить меня больше о том, когда я должен использовать SF, который DDC не предоставляет.




Ответы (1)


Если ландшафт вашего приложения состоит из контейнеров и вы не собираетесь его менять, вам, вероятно, следует придерживаться DDC.

Service Fabric (ASF) может предложить гораздо больше, чем поддержка контейнеров. На самом деле, раньше у него даже не было поддержки контейнеров.

Цель AFS — предоставить платформу для создания приложений на основе микрослужб с использованием служб без сохранения состояния, служб с отслеживанием состояния и субъектов.

Вещи, которые DDC не предоставляет:

Службы с отслеживанием состояния. Преимущество служб с отслеживанием состояния заключается в том, что данные живут там же, где и код, поэтому больше нет отдельных хранилищ данных, таких как NoSQL или реляционная база данных. Большим преимуществом является уменьшение задержки. Другими словами, если у вас есть внешний интерфейс, работающий в контейнере, который подключается к контейнеру, содержащему, например, сервер MySQL, вы можете заменить его, используя сочетание служб без сохранения состояния и служб с отслеживанием состояния.

Модель субъектов. Шаблон субъектов – это вычислительная модель для параллельных или распределенных систем, в которой большое количество этих субъектов может выполняться одновременно и независимо друг от друга.

В некоторых сценариях использование контейнеров в ASF является временным, чтобы поднимать и перемещать существующее программное обеспечение и объединять его с собственными моделями служб ASF. На более поздних этапах контейнеры могут быть заменены службами ASF.

официальный docs перечисляет некоторые сценарии запуска контейнеров в ASF:

Подъем и перенос IIS. Если у вас есть существующие приложения ASP.NET MVC, которые вы хотите продолжать использовать, поместите их в контейнер, а не переносите в ASP.NET Core. Эти приложения ASP.NET MVC зависят от информационных служб Интернета (IIS). Эти приложения можно упаковать в образы контейнеров из предварительно созданного образа IIS и развернуть их с помощью Service Fabric. Сведения о контейнерах Windows см. в разделе Образы контейнеров на Windows Server.

Объедините контейнеры и микросервисы Service Fabric: используйте существующий образ контейнера для части вашего приложения. Например, вы можете использовать контейнер NGINX для веб-интерфейса вашего приложения и службы с отслеживанием состояния для более интенсивных внутренних вычислений.

Уменьшение влияния служб "шумных соседей". Вы можете использовать возможности контейнеров по управлению ресурсами, чтобы ограничить ресурсы, используемые службой на узле. Если службы могут потреблять много ресурсов и влиять на производительность других (например, длительная операция, похожая на запрос), рассмотрите возможность помещения этих служб в контейнеры с управлением ресурсами.

Кстати, в ваших упомянутых вопросах и ответах тот факт, что это продукт Microsoft, выслушивается как возможный недостаток. Для некоторых это все еще может быть так, но Microsoft объявила, что будет с открытым исходным кодом ASF.

person Peter Bons    schedule 04.04.2018
comment
Спасибо за ответ, но эквивалентом службы с отслеживанием состояния является монтирование тома portworx в DDC. Можно ли это сравнить? docs.portworx.com/architecture.html - person VKh; 06.04.2018
comment
Думаю, я недостаточно знаком с portworx, чтобы дать содержательный ответ, но я знаю, что в службах с отслеживанием состояния изменения состояния являются транзакционными, и состояние реплицируется в реплику службы. - person Peter Bons; 09.04.2018