A Multi-tenant application architecture allows a single instance of the application and database to serve multiple tenants / customers / user groups. A True Multi-tenant architecture not only isolates data between tenants, but also allows extensive customization and configuration of the product to suit different customers / user groups without having to change the underlying code base.
Multi-tenancy Maturity Models
Multi-tenancy at different layers : Infrastructure, Database and Application
Technical Challenges
Development Stacks
Multi-tenant Plumbing Stack
Multi-tenant Data Connection Abstraction
Multi-tenant Security : Authentication, Encryption, Audit Trail
Multi-tenant Security : Access Control, Role and Privileges Management
Multi-tenant Customization : Views, Data models, Custom Fields
Multi-tenant Customization : Business rules and Workflows
Multi-tenant Customization : Adhoc builders for Reports, Charts, Widgets
Multi-tenant Notification and Schedulers
Multi-tenant Feature / Package / Subscription Management
Metering, Billing and Price Book Management
Tenant and User Management
Bulk Import, Export and Data Management utilities
Multi-tenant SaaS Framework: Build vs Buy