Multi-tenancy is a feature that is touted as being fundamental to any cloud ecosystem (especially SaaS and PaaS) . In order to understand multi-tenancy better let us first try to answer these questions
A tenant is the customer of the service provider. Multi-tenancy implies that resources are being shared between customers. These resources might be at the
Customers no longer require dedicated hardware and software (server, database etc). The Providers operate using a pay as you use model. Clients do not use 100% of the resources all the time. It’s a win-win situation where the provider can optimize resources to suit demand and the tenants do not need to pay for their idle time. Upgrades can happen in mass since all customers share instances of the same software. There is no necessity for the service provider to support multiple versions of the software.
There has been a lot of debate around this question. Multi-tenancy is definitely a feature of mature SaaS applications. The real question is - What level of Multi-tenancy is required? There are offerings in the market that are completely multi-tenant - everything down to database tables are shared. There are other offerings where the customers just share the hardware. Deciding on the level of mulit-tenancy required is crucial for architecting a SaaS application.