мультитенантность

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

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

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

.