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