What is a tenant / multi-tenant in computing and software domain?

A tenant is a group of users who share a common access with specific privileges to the software instance.

Multi-tenancy is an architecture wherein a single occurrence of a software application serves numerous clients. Every client is known as a tenant. Tenants might be enabled to modify a few pieces of the application, for example, business rules or user interface, yet they can’t alter the application’s code.

In the context of computer science and software engineering, a tenant is a logical partition of a software application that allows multiple clients, organizations or users to share the same infrastructure, but each tenant has separate and isolated access to the data, configurations and other resources, as if each tenant was running its own instance of the application. This concept is particularly useful for multi-tenant software as a service (SaaS) applications, where the service provider wants to provide a single instance of the application to multiple customers, but each customer should have the illusion of running their own independent application.

Software multitenancy is a software architecture in which a single instance of software runs on a server and serves multiple tenants. Systems designed in such manner are “shared” (rather than “dedicated” or “isolated”). A tenant is a group of users who share a common access with specific privileges to the software instance. With a multitenant architecture, a software application is designed to provide every tenant a dedicated share of the instance – including its data, configuration, user management, tenant individual functionality and non-functional properties. Multitenancy contrasts with multi-instance architectures, where separate software instances operate on behalf of different tenants

For example, a SaaS company that provides an enterprise resource planning (ERP) system might have a single database, server, and application code base, but separate tenants for each customer, with each tenant having its own set of users, data, configurations, and customizations. The tenants are isolated from each other, so that the data and customizations of one tenant cannot be accessed by another tenant. This way, the SaaS provider can manage the entire infrastructure and provide service to many customers with reduced overhead, while each customer can customize the application to meet its own specific needs.

Rajesh Kumar
Follow me
Latest posts by Rajesh Kumar (see all)
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x