В чем разница между приложениями API Azure и Azure Service Fabric?
Я использую хранилище таблиц Azure для хранения данных моего приложения. Мне нужно создать API для извлечения данных из хранилища таблиц Azure. В таблице около миллиона записей. На начальном этапе мой API получал бы примерно 100-1000 обращений в день. Что было бы лучшим выбором для разработки этого API, приложений API или Service Fabric?
2 ответа
Это зависит от многих аспектов:
- Как вы хотите сохранить это?
- Какие требования к производительности у вас есть? Все ли эти 100-1000 посещений в день происходят одновременно или они распределяются по дням?
- Как вы хотите справиться с масштабированием?
Как описано @feranto, основным отличием является архитектурный рисунок. Решение будет иметь много последствий для вас, не только когда речь идет о разработке, но вам придется подумать о том, как поддерживать свое приложение.
Только исходя из вашего краткого описания, это звучит как относительно простое решение и не очень сложные и не очень высокие требования к производительности / масштабу. Учитывая это, вам может быть проще перейти на более простое приложение API. Service Fabric - это отличная структура и архитектура, которая позволяет нам создавать очень гибкие, масштабируемые решения, но следует отметить, что это также значительно усложняет задачу обработки, мониторинга и обслуживания как базового кластера услуг, так и его Приложения.
Настройка приложения API, подключение к таблице хранилища Azure и контроль, например, с помощью Application Insights, относительно прост, и вы можете найти много документации и примеров для этого. В отличие от этого, Service Fabric довольно зарождается в документации и примерах, и вам придется много читать, чтобы запустить базовое стабильное решение, если вы новичок в нем.
Основное различие между Azure API
а также Azure Service Fabric
это образец архитектуры, который следует каждому:
Azure API APPs
поддерживает монолитную архитектуру. У вас весь код работает как один пакет. Вы можете разработать это, используя Java, PHP, nodejs, python или.net.Service Fabric
следует микросервисной архитектуре. Каждый сервис развернут на отдельном узле, который может масштабироваться независимо, и вы можете отслеживать работоспособность каждого сервиса в каждом узле. Вы можете разработать это, используя в основном Java или C#.
Здесь вы можете увидеть преимущества и недостатки между микросервисами и монолитной архитектурой.