Multi-tenancy, as indicated by the literal meaning of the term or rather the word, is a system like tenancy of a particular infrastructure, a particular application or software, which can be shared by users simultaneously, in real time. Multi-tenancy is comparable to the concept of a typical hostel by any university, for their students.
Multi-tenancy : Basics of the Basic
Multi-tenancy by definition, defines a virtual architecture where a single deployment instance of a particular software or hardware will run on a server, but can be used simultaneously by multiple clients with a layer so that none will need to compromise. This actual concept was described by the idea of distributed computing. The core concept of multi-tenancy should not be confused with multi-instance software or hardware architecture, where separate software instances or separate hardware systems are made available to different users. In other words, a typical multi-tenant software application is designed to virtually partition its data and configuration to each and every tenant with custom application instances. We already described the basics about PaaS and aPaaS.
Multi-tenancy is a fundamental consequence of virtualization technology, which enables us to realize a multi-tenant infrastructure, we are witnessing the creation of virtual environments with logically separate components on the same shared physical infrastructure.
How Multi-tenancy Actually Works
Although the concept of multi-tenancy indicates that there are some shared infrastructure, the factor that makes the difference is at the level at which the resources are becoming multi-tenant. For example, Rackspace Cloud Sites or previously known Mosso System is multi-tenant at the hardware level, since the users can be in a state of sharing the same physical machine. It has a separate multi-tenant database, users share the data in the same DB tables. In contrast, Amazon relies on a hypervisor to provide isolation between tenants, Salesforce achieve the same result, which is based on a queries.
There is difference between how this Multi-tenancy is deployed to avoid becoming a shared server. That concept is very complex, to some extent there are proprietary ideas (not necessarily that they are always they are of closed source in nature) and actually build up on the concept of Cloud Computing and Relationship with Service Oriented Architecture.