How do I scale my SaaS subscriptions
Tenant models for SaaS applications
- 3 minutes to read
In a SaaS (Software-as-a-Service) model, each of your customers is a client of your application. Each tenant pays a subscription fee to access the SaaS application. This article describes the application tenant models that are available when building SaaS applications.
When designing a SaaS application, you choose an application tenant model that best suits the needs of your customers and your business. In general, the application tenant model does not affect the functionality of an application. However, this is likely to affect other aspects of the overall solution, including scaling, tenant isolation, cost per tenant, and operational complexity.
What are application tenant models?
The following sections explain concepts of the single-tenant application model and the mixed and multi-tenant application models.
In the single tenant model, a dedicated instance of the application is provided for each customer. For example, in an application with an n-tier architecture, all customers receive a new, dedicated instance of the web, middle, and data tier. These layers are not shared by customers.
Mixed tenant model
In this model, one or more parts of an application are dedicated to each customer, while the remaining parts are shared by all customers. For example, in an application with an n-tier architecture, the web tier and middle tier are shared by all customers. However, each customer is provided with a dedicated data tier and database.
In this model, a single instance of the application is deployed to and shared by all customers. In an n-tier architecture application, the web, middle, and data tiers are shared by all customers.
A combination of these models can also be provided for customers with other requirements. For example, the basic tariff of your service could run in a multi-tenant instance of the application. This means your customers can access an entry-level version of your app at a lower cost, but receive lower performance or limited functionality. In addition to this basic version, a dedicated service level could be implemented in a single tenant model. This allows you to offer an isolated instance of your application at a higher cost to customers who need higher performance or additional functionality.
Comparison of the application tenant models
The tenant model usually does not affect how an application works, but it is very likely to affect other aspects of the overall solution. The following table summarizes the differences between the application tenant models:
|Tenant isolation||Very high||High||Low|
|Cost per client||High||medium||Low|
|Complexity of operation||Low to high: individually simple, but complex on a grand scale||Low to medium: Consider complexity on a grand scale||Low to high: Managing individual clients is complex|
In the following, the terms used for measurement are described:
Scaling : The number of concurrent customers (or tenants) your application can be used by.
Tenant isolation: The degree of separation of customer data and performance from other customers.
Costs per client: The relative cost of running a tenant for a single customer.
Complexity of operation: How complex is it to perform operational tasks such as automation, security, monitoring, maintenance, metering, application provisioning, disaster recovery / BCP?
In general, the single tenant application model is easier to manage with a small number of tenants. With a large number of clients, however, it can quickly become complex if there are no strict guidelines for optimal operation. In contrast, in the multi-tenant application model, it is easier to manage the system as a whole. However, if you want to manage a single customer client independently, it quickly becomes very complex, unless there are strict guidelines for optimal operation.
Now that you understand customer needs and business goals, ask yourself the following questions:
- Am I working in a highly regulated industry where each customer's data needs to be isolated from one another?
- Do I want to quickly scale my application to many thousands of clients?
- Are the costs of running the individual tenant / customer instances important?
The answers to these questions will help you refine your tenant needs.
For more information about tenant patterns for applications, see Tenant Patterns for Multi-Tenant SaaS Databases.
- Did ancient Rome know about America?
- Will Puigdemont rule the independent Catalonia of Brussels?
- Why are submarines built
- Why do people love junk food
- How much money can bloggers make
- Is it Safe to Swallow Pomegranate Seeds?
- What happened 20,000 years ago
- How do hedonism and epicureanism contrast
- Why are teachers important in curriculum development
- Which is the best direct sales company
- Symbols What is an Ouroborus
- How do you alleviate the awkwardness in the elevator
- Where can I learn Mandarin in Delhi
- Why do people cut their wrists?
- What are questions and answers
- Who came up with the metric unit?
- What made religion decline in America?
- How do I find offers for Zomato
- Which country has the bloodiest history
- How should I pronounce the genre correctly
- Why don't Australians tip
- What is your bad habit of eating
- What does lim x 0 mean?
- Delete Quora moderators asking why
- You like to wear skirts without underwear
- How is your life and its goal
- What is CTR Affiliate Marketing
- Why Indonesian cuisine is tasteless 1
- What background can data science students learn?
- Kiwis greet the Singaporeans
- Who is Katherine Heigl
- What is the best ETF to buy
- What a great business it is that nobody starts