Мультиарендность

Мультиарендность ( «множественная аренда») — элемент архитектуры программного обеспечения, где единый экземпляр приложения обслуживает множество организаций-клиентов («арендаторов»). Мультиарендность противопоставляется архитектуре из множественных экземпляров (), где для каждой организации-клиента создаются отдельные программные экземпляры. В мультиарендной архитектуре программные приложения работают одновременно с несколькими конфигурациями и наборами данных нескольких организаций, а каждая организация-клиент работает со своим экземпляром виртуального приложения, видя только свою конфигурацию и свой набор данных.

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

История 
Мультиарендные приложения развиваются в трёх направлениях (а также совмещают некоторые характеристики):
 С 1960-х годов компании арендуют пространство и вычислительные мощности на мейнфреймах (разграничение времени) для уменьшения стоимости вычислений, заказчики обычно используют эти мощности с простым разграничением точки входа — экран входа в систему для определения идентификационного номера пользователя. Основываясь на этом ID отдел учёта пользователей мейнфрейма должен подготовить для каждого пользователя процессор, память и дисковое пространство. Этот метод продолжает использоваться в SAP ERP в продуктах линеек R/1 — R/2.
 С 1990-х годов распространилась практика предоставления через интернет приложений для множества организаций-заказчиков. Завися от ограничений основных приложений, ASP размещает приложения на различных машинах (если множество экземпляров приложений не может быть запущено на одной физической машине) или разделяет процессы. Мультиарендные приложения представляют более зрелую архитектуру, которая делает доступными простые службы с низкими операционными затратами.
 Популярные, ориентированные на потребителей веб-приложения были функционально созданы как экземпляр единого приложения, которое обслуживает одновременно всех заказчиков. Мультиарендные приложения предоставляют естественную эволюцию от такой модели к дополнительным настраиваемым группам или пользователям внутри каждой организации-клиента, пользующихся таким единым приложением.

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

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

Конкурентные преимущества 
Некоторые компании считают мультиарендность источником конкурентного преимущества.

Экономия 
Мультиарендность позволяет экономить на масштабах: экземпляр приложения обычно берёт на себя определённую долю памяти и вычислительных расходов, которые могут быть существенными при умножении на большое количество клиентов. Мультиарендность уменьшает эти вычислительные расходы амортизируя их на большинство клиентов. В дальнейшем экономия может достигаться от снижения затрат на лицензирование программного обеспечения (такие как операционная система, система управления базами данных, связующее программное обеспечение). Однако, разработка мультиарендной системы — достаточно сложная задача, и требует дополнительных ресурсов тестирования безопасности и изоляции клиентов.

Сбор данных 

Архитектура программного обеспечения
Разработка программного обеспечения