13-09-2023
Мультиарендность (англ. Multitenancy — «множественная аренда») — элемент архитектуры программного обеспечения, где единый экземпляр приложения, запущенного на сервере, обслуживает множество организаций-клиентов («арендаторов»). Мультиарендность сопоставляется с архитектурой из множественных экземпляров (англ. multiinstance), где для каждой организации-клиента создаются отдельные программные экземпляры. С мультиарендной архитектурой программные приложения работают одновременно с несколькими конфигурациями и наборами данных нескольких организаций, а каждая организация-клиент работает со своим экземпляром виртуального приложения, видя только свою конфигурацию и свой набор данных.
Принципы мультиарендности не являются повсеместно принятыми и поддерживающимися внутри индустрии программного обеспечения, однако их использования может являться источником конкурентных преимуществ.
Мультиарендные приложения развиваются в трёх направлениях (а также совмещают некоторые характеристики):
В мультиарендной среде большое количество клиентов разделяют одно и то же приложение, запущенное в одной и той же операционной системе, на одном и том же оборудовании с единым механизмом хранения данных. Различие между клиентами достигается во время проектирования приложения, таким образом клиенты не пересекаются и не видят данные друг друга. При виртуализации абстрактные компоненты дают возможность каждый экземпляр приложения запустить на выделенной логической машине.
Некоторые компании считают мультиарендность источником конкурентного преимущества.
Мультиарендность позволяет экономить на масштабах: экземпляр приложения обычно берёт на себя определённую долю памяти и вычислительных расходов, которые могут быть существенными при умножении на большое количество клиентов. Мультиарендность уменьшает эти вычислительные расходы амортизируя их на большинство клиентов. В дальнейшем экономия может достигаться от снижения затрат на лицензирование программного обеспечения (такие как операционная система, система управления базами данных, связующее программное обеспечение). Однако, разработка мультиарендной системы — достаточно сложная задача, и требует дополнительных ресурсов тестирования безопасности и изоляции клиентов.
Разработка программного обеспечения | |
---|---|
Известные деятели |
Кент Бек • Гради Буч • Фред Брукс • Barry Boehm • Уорд Каннингем • Оле-Йохан Даль • Том Демарко • Эдсгер Вибе Дейкстра • Дональд Кнут • Мартин Фаулер • Чарльз Энтони Ричард Хоар • Watts Humphrey • Майкл Джексон • Ивар Якобсон • Craig Larman • James Martin • Мейер Бертран • Дэвид Парнас • Winston W. Royce • James Rumbaugh • Никлаус Вирт • Эдвард Йордан • Стив Макконнелл |
Процесс | |
Концепции | |
Направления | |
Модели разработки |
Agile • Cleanroom • CASE • Итеративная разработка • RUP • OpenUP • RAD • Scrum • MSF • Спиральная • Каскадная • XP • V-Model • Dual Vee Model • DSDM |
Другие модели |
CMM • CMMI • Данных • Function model • IDEF • Информационная • Metamodeling • Object model • View model • UML |
Прочее |
Информатика • Инженерия (Компьютерная • Организационная) • История разработки ПО • Документирование • Управление (Конфигурационное • Проектами • Программами • качеством) • Эргономика • Системотехника • Обратная разработка • Версии |
Мультиарендность.