мультитенантность — элемент архитектуры программного обеспечения, где единый экземпляр приложения обслуживает множество организаций-клиентов («арендаторов»).
Этот подход применяется везде, где компания параллельно поддерживает несколько версий одного продукта. Например, когда одно подразделение продаёт услуги частным клиентам, а другое работает с юридическими лицами, и в обоих случаях сотрудникам нужна разная система продаж.
Принцип работы мультитенантности заключается в том, что процессы арендаторов разделяются на независимые друг от друга, как на уровне компаний, так и на уровне отдельных пользователей. Для каждого бизнес-сервиса заказчика выделяется отдельная среда, а сервису присваивается уникальный идентификатор, который распределяет информацию между пользователями.
Существуют три типа мультитенантности:
Единые ресурсы, хранилище информации и инсталляция. Разделение на тенанты происходит на уровне программного обеспечения. Приложение самостоятельно определяет доступ пользователей к ресурсам в соответствии с правами.
Единое хранилище данных и инсталляция, но разделение ресурсов. Разделение происходит на уровне инфраструктуры, каждому тенанту предоставляется собственный фиксированный по мощности пул ресурсов.
Полное разделение. Для каждого тенанта существуют собственные ресурсы и хранилище информации. Инсталляция программного обеспечения для каждого арендатора тоже отдельная.