Модели аренды для приложений SaaS

Служба хранилища
База данных SQL

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

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

Что такое модели аренды приложений

В следующих разделах рассматриваются основные понятия моделей приложений с одним, смешанным и мультитенантным использованием.

Однотенантное приложение

Изображение модели приложений с одним клиентом

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

Смешанный клиент

Изображение модели приложения смешанного клиента

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

Мультитенантное приложение

Изображение модели мультитенантного приложения.

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

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

Ознакомьтесь с нашим подробным руководством:

Сравнение моделей аренды приложений

Как правило, модель аренды не влияет на функциональность приложения, но, скорее всего, влияет на другие аспекты общего решения. В следующей таблице перечислены различия между моделями клиента приложений.

Измерения Один клиент Смешанный Мультитенантное приложение
Масштабирование Средний Высокий Очень высокая
Изоляция арендаторов Очень высокая Высокий Низкий
Затраты на арендатор Высокий Средний Низкий
Сложность эксплуатации Низкий-высокий — по отдельности простой, сложный в большом масштабе. Низкий —средний — необходимо решать сложные задачи в большом масштабе. Низкий и высокий уровень— управление отдельным клиентом является сложным.

Термины измерения подробно описаны ниже.

Масштаб: Количество одновременных клиентов (или клиентов), которые может обслуживать приложение.

Изоляция клиента. Степень, в которой данные и производительность клиентов отделены от других клиентов.

Затраты на арендатор: Относительная стоимость запуска одного клиента.

Операционная сложность: Насколько сложно выполнять операционные задачи, такие как автоматизация, безопасность, мониторинг, обслуживание, контроль, развертывание приложений, аварийное восстановление или BCP.

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

Дополнительные сведения

После того как вы узнаете о потребностях и бизнес-целях клиента, начните задавать следующие вопросы:

  • Работаю ли я в строго регулируемой отрасли, которая требует изоляции данных клиентов от других клиентов?
  • Нужно ли быстро масштабировать приложение до многих тысяч клиентов?
  • Меня беспокоит, сколько стоит запуск каждого клиента или экземпляра клиента?

Ответы на эти вопросы помогут вам уточнить требования к аренде.

Соавторы

Эта статья поддерживается Майкрософт. Первоначально она была написана следующими авторами.

Основной автор:

Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.

Дальнейшие действия

Дополнительные сведения о шаблонах аренды приложений см. в статье Шаблоны аренды баз данных SaaS с несколькими клиентами.

Ознакомьтесь с нашим руководством по архитектуре для мультитенантных решений: