본문 바로가기

Computer Science/Software Architecture

[Software Architecture] Multi-Tenant Architecture이란?

728x90

Multi-Tenant application

 

The multi-tenancy concept is that numerous users share computational, networking, and storage resources without seeing each other’s data.

A multi-tenant application is customized for every group of users (so-called tenants) while the entire architecture and core functionality remain the same.

Multi-tenancy is a typical approach for Software-as-a-Service (SaaS) vendors.

 

Multi-tenant architecture best suits the following types of applications:

  1. SaaS (software as a service) or AaaS (applications as a service)
  2. PaaS (Platform as a Service)
  3. IaaS (Infrastructure as a Service)
  4. For all other applications where multiple clients use the same stack of algorithms. The main functionality is either the same or modular, and it can be tailored to any of the client’s needs.

Multi-Tenant vs. Single-Tenant

1. Single-Tenant

Each user receives dedicated computing, network, and storage resources.

Every environment is developed and managed separately.

In essence, this option does not allow for any sharing.

 

2. Multi-Tenant

This model supports hosting multiple customers inside one environment and reusing core application functionality.

Each of the tenants is isolated and invisible to others.

Residents are separated logically, not physically; thus, fewer hardware investments are needed.

Other benefits include simplified security support and more affordable licensing.

Less time/effort disbursed on many diverse solutions means more time/effort dedicated to the core solution.

Overall quality wins in this case.

 

Reference

 

Multi-Tenant Application

Software Architecture | Update on Architecture learnings

medium.com

 

반응형