A transparent approach of enabling saas multi-tenancy in the cloud
Abstract
It has become more and more obvious that in Cloud Computing, applications are key drivers to make Cloud business a success. Multi-tenancy is a critical technology to allow one instance of application serving multiple customers at the same time to share Cloud resources and achieve high operational efficiency. There are different options of realizing multi-tenancy, in this paper we describe a transparent approach of making existing Web applications to support multi-tenancy and run in the public Cloud. Our approach includes intercepting the Web requests and deriving the tenant context, carrying the tenant context with a thread in the Web container, manipulating the isolation points (application artifacts that need to be isolated) in a Web application, and propagating tenant context to remote Cloud resources (such as database server, and message queue server) when necessary. With this approach, volumes of existing Web applications could quickly be provisioned through a public Cloud platform without rewriting the original source code. We have also implement a real system based on the common multi-tenancy model that separate the concerns of application developer, SaaS operator, tenant administrator, and tenant user. We finally integrate the SaaS multi-tenancy technique with Cloud platform services. © 2010 IEEE.