Conference Paper

Evaluating the Effect of Multi-Tenancy Patterns in Containerized Cloud-Hosted Content Management System

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

Multi-tenancy in cloud computing describes the extent to which resources can be shared while guaranteeing isolation among components (tenants) using these resources. There are three multi-tenancy patterns: shared, tenant-isolated and dedicated component patterns. These patterns have not previously been formally specified. In order to create a precise definition and verify each pattern, we formally specify each pattern using the Z language. To validate the interpretation of our formal description, We empirically evaluate each pattern using the data-tier of a cloud hosted distributed content management application, WordPress, deployed in a Docker container. Experimental results show that the dedicated pattern successfully managed larger numbers of tenants with fewer unhandled request errors. The shared and tenant isolated patterns exhibited larger number of unhandled request errors when the number of tenants increased. We present a selection algorithm to choose suitable multi-tenancy pattern for cloud deployment of content management system.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... Increased competition, globalization, rising cost of customer acquisition, and high customer turnover are important issues in industries as disparate as financial services, telecommunications, and retail [13]. Adewojo and Bass, 2018) report that cloud computing provides scaling, resource provisioning, IT infrastructure, development platforms, data warehousing, and software applications on the Internet. Cloud vendors have recently witnessed an increase in the number of users using cloud software applications commonly known as Software as a Service (SaaS). ...
... Cloud vendors have recently witnessed an increase in the number of users using cloud software applications commonly known as Software as a Service (SaaS). SaaS is a cloud computing model for accessing software applications over the Internet that eliminates customer infrastructure installation, centralizes maintenance, and lowers total costs [20]. ...
... Sixty percent of all sites using a content management system use WordPress, the only one with a double-digit market share, Joomla is second with a 6.4% market share [21]. Adewojo and Bass (2018) in their research project used WordPress as a benchmark application because it is an open-source distributed content management system that is widely used and used by internet users to test the performance of the three multitenancy standards, getting great results and offers free plug-ins and extensions [20]. ...
... Increased competition, globalization, rising cost of customer acquisition, and high customer turnover are important issues in industries as disparate as financial services, telecommunications, and retail [13]. Adewojo and Bass, 2018) report that cloud computing provides scaling, resource provisioning, IT infrastructure, development platforms, data warehousing, and software applications on the Internet. Cloud vendors have recently witnessed an increase in the number of users using cloud software applications commonly known as Software as a Service (SaaS). ...
... Cloud vendors have recently witnessed an increase in the number of users using cloud software applications commonly known as Software as a Service (SaaS). SaaS is a cloud computing model for accessing software applications over the Internet that eliminates customer infrastructure installation, centralizes maintenance, and lowers total costs [20]. ...
... Sixty percent of all sites using a content management system use WordPress, the only one with a double-digit market share, Joomla is second with a 6.4% market share [21]. Adewojo and Bass (2018) in their research project used WordPress as a benchmark application because it is an open-source distributed content management system that is widely used and used by internet users to test the performance of the three multitenancy standards, getting great results and offers free plug-ins and extensions [20]. ...
... An extended model of SaaS, namely multitenant SaaS is gaining prominence where a single version of the software is shared among multiple tenants resulting in maximum utilization of resources. A tenant is any organization consisting of a group of users who share a common view of an application [2]. Moreover, it helps tenants to minimize maintenance costs due to centralized version control. ...
Article
Full-text available
In the contemporary era, cloud computing has emerged as an eminent technology that offers on-demand services anytime and anywhere over the internet. Cloud environment allows organizations to scale their application based on demand. Traditionally, monolithic approach of application development has begun to face various bottlenecks and challenges. This has promoted a shift to a new paradigm, micro-service architecture for the development of cloud-based applications, which is gaining popularity due to decoupled independent services. Micro-service architecture contemplates overcoming the limited scalability of monolithic architecture. In this paper, a multitenant booking application is designed and developed using both monolithic and micro-service architecture as a case study. The application is deployed as Docker container images on Google cloud platform. The comparison of various factors, such as performance, scalability, load balancing, reliability, resource utilization, and infrastructure cost is performed. JMeter is used as a load generation and performance testing tool. Performance analysis in terms of response time is done for the multitenant booking application. Results indicate that independent scaling of micro-services leads to effective utilization of resources unlike the monolithic approach.
... Cloud-based systems can usually support sharing and multi-tenancy, leading to economies of scale and better resource utilization [1]. The literature discusses different approaches of sharing leading up to multi-tenancy: at the data center layer, at the infrastructure layer, or application layer sharing -multi-tenancy [12]. ...
Conference Paper
We describe the design and implementation of an innovative software platform that enables hoteliers to configure custom solutions to manage their business, by building on multiple existing Software-as-a-Service (SaaS) solutions. A flexible cloud integration mechanism uses "drivers" to communicate with various SaaS via their existing APIs. Selection of the solutions is made easy by the inclusion of a Marketplace, and the user experience is made seamless by an homogenous user interface (UI) that orchestrates the calls to the heterogenous underlying logic provided by multiple vendors. The resulting platform is, itself, offered as a SaaS, whose functionality is highly adaptable depending on the chosen integrations. These can be reconfigured at any time, thus avoiding lock-in to any particular one, and without incurring in the costs associated with retraining and learning curves of end-users. The core cloud integration architecture of the platform is generic, so it can be adapted for other domains.
Article
Full-text available
Cloud-native architectures has become an essential part of the cloud computing paradigm with the capacity of improved horizontal and vertical scalability, automation, usability and multi-tenancy. However, there are parts that are yet to be fully discovered like multi-tenancy. Multi-tenancy an essential part of the cloud computing, has not been fully. The purpose of this study is to survey existing research on multi-tenancy in cloud-native architecture in order to identify useful trends, opportunity, challenges and finally the needs for further researches. A systematic mapping method was used to systematically compare, classify, analyse, evaluate and appraise existing works of literature on multi-tenancy in cloud-native. We started from over 921 potentially relevant peer reviewed publications. We applied a selection procedure resulting in 64 peer reviewed publications over the last six years between 2015 to 2022 and the selected studies were classified through the characterisation framework. The review shows the emerging challenges and trending concepts in multi-tenancy within cloud native architecture, but also discusses the improvement in multi-tenancy while considering cloud native architecture in the recent years.
Article
Full-text available
This electronic document describes one of the first full open-source frameworks for posture and face detection and classification using Kinect sensors, based entirely on an open-sourced software platform. It has been designed with the possibility of automatic monitoring of either an elderly person who is situated in a closed space (a room with furniture, appliances, and other rigid objects), or a patient who suffers from a physiological disorder. It is also based on an original hardware platform (the AmI-Platform), which includes more Kinect sensors, data acquisition stations, and crunches (data servers). The articles tackle two of the most important issues for ambient intelligence: accurate determination of the person and his or her facial landmarks (to understand emotions) and fast and reliable posture determination (to take appropriate measures in case of an accident).
Conference Paper
Full-text available
Multi-tenancy is a vital cloud computing property that enables multiple tenants of an application to be served concurrently while guaranteeing isolation between the tenants. Current cloud deployment patterns catalogue for implementing multi-tenancy lack details which make it difficult to use in deploying applications to the cloud. This paper applies our existing catalogue template to the cloud multi-tenancy patterns, in particular the tenant-isolated and dedicated component pattern. Thereafter we demonstrated its applicability with a local company software application that involved the migration of a database driven business process management system to the cloud. The result shows that: (i) there is an improvement in the structure and clarity of the cloud deployment pattern catalogue; (ii) deployment patterns can help achieve migration in less time and with realistic results; (iii) the improved catalogue helps software engineers to understand the trade-off between each pattern.
Conference Paper
Full-text available
Cloud computing provides scalable and reliable computing services that can be beneficial to software organizations that intend to migrate their existing or new applications to the cloud. However, migration is potentially complex, so cloud computing deployment patterns are proposed to support the migration process. This research compares the format, structure and notations of previous object oriented design patterns with a recent cloud computing design pattern. Firstly, the gaps in cloud computing design patterns catalogue are identified. Secondly, we present a template for creating pattern catalogue for cloud deployment patterns. This template was derived from a widely accepted and most highly cited design pattern catalogue and we applied this template to the shared component pattern, a variant of multi-tenancy pattern. Finally, we demonstrated the shared component's pattern validity by applying it to the data model of a database driven desktop application that was migrated to the cloud. The result shows that: (i) there is an improvement in the structure and clarity of the shared component pattern catalogue; and (ii) Information conveyed to software developers is enhanced.
Conference Paper
Full-text available
Performance isolation is a key requirement for application-level multi-tenant sharing hosting environments. It requires knowledge of the resource consumption of the various tenants. It is of great importance not only to be aware of the resource consumption of a tenant's given kind of transaction mix, but also to be able to be aware of the resource consumption of a given transaction type. However, direct measurement of CPU resource consumption requires instrumentation and incurs overhead. Recently, regression analysis has been applied to indirectly approximate resource consumption, but challenges still remain for cases with non-determinism and multicollinearity. In this work, we adapts Kalman filter to estimate CPU consumptions from easily observed data. We also propose techniques to deal with the non-determinism and the multicollinearity issues. Experimental results show that estimation results are in agreement with the corresponding measurements with acceptable estimation errors, especially with appropriately tuned filter settings taken into account. Experiments also demonstrate the utility of the approach in avoiding performance interference and CPU overloading.
Conference Paper
Full-text available
Multi-tenancy has shown promising results in achieving high operational cost efficiency by sharing hardware and software resources among multiple customer organisations, called tenants. In the context of cloud computing, this paradigm enables cloud providers to reduce operational costs by dividing resources and to simplify application management and maintenance. Maximum cost efficiency is achieved with application-level multi-tenancy. However, this high level of resource sharing complicates performance isolation between the different tenants, i.e.~ensuring compliance with the SLAs of the different tenants and ensuring that the behaviour of one tenant cannot adversely affect the performance of the other tenants. This paper explores the challenges of performance isolation in the context of multi-tenant SaaS applications. In addition, we propose a middleware architecture to enforce performance isolation based on the tenant-specific SLAs, using a tenant-aware profiler and a scheduler. Our prototype reveals promising initial results.
Conference Paper
Full-text available
Cloud computing, as a concept, promises cost savings to end-users by letting them outsource their non-critical business functions to a third party in pay-as-you-go style. However, to enable economic pay-as-you-go services, we need Cloud middleware that maximizes sharing and support near zero costs for unused applications. Multi-tenancy, which let multiple tenants (user) to share a single application instance securely, is a key enabler for building such a middleware. On the other hand, Business processes capture Business logic of organizations in an abstract and reusable manner, and hence play a key role in most organizations. This paper presents the design and architecture of a Multi-tenant Workflow engine while discussing in detail potential use cases of such architecture. Primary contributions of this paper are motivating workflow multi-tenancy, and the design and implementation of multi-tenant workflow engine that enables multiple tenants to run their workflows securely within the same workflow engine instance without modifications to the workflows.
Article
Multi-tenancy is one of the key features of cloud computing, which provides scalability and economic benefits to the end-users and service providers by sharing the same cloud platform and its underlying infrastructure with the isolation of shared network and compute resources. However, resource management in the context of multi-tenant cloud computing is becoming one of the most complex task due to the inherent heterogeneity and resource isolation. This paper proposes a novel cloud-based workflow scheduling (CWSA) policy for compute-intensive workflow applications in multi-tenant cloud computing environments, which helps minimize the overall workflow completion time, tardiness, cost of execution of the workflows, and utilize idle resources of cloud effectively. The proposed algorithm is compared with the state-of-the-art algorithms, i.e., First Come First Served (FCFS), EASY Backfilling, and Minimum Completion Time (MCT) scheduling policies to evaluate the performance. Further, a proof-of-concept experiment of real-world scientific workflow applications is performed to demonstrate the scalability of the CWSA, which verifies the effectiveness of the proposed solution. The simulation results show that the proposed scheduling policy improves the workflow performance and outperforms the aforementioned alternative scheduling policies under typical deployment scenarios.
Article
As a popular technique in Cloud computing, Multi-Tenancy (MT) can significantly ease software maintenance, and improve resource utilization. To make use of the MT technique, an application may need to be transformed to be MT-enabled. This process involves finding and processing a special kind of data entities named Global Isolation Points (GIPs). Practically, finding all GIPs of an application is challenging. Traditional method involves manually browsing the application code, requiring a great deal of human effort. To solve this problem, we introduce a toolkit named Auto-MT to help find and process GIPs of an application. Auto-MT is able to find new GIPs based on their relations to known GIPs. To characterize the relation, a novel graph called Value Flow Graph (VFG) is introduced, which models the value flows of data entities. It can also be used in other scenarios, like taint analysis. We have implemented Auto-MT as an Eclipse Plug-in, and applied it to transform Roller, a widely used Java application. Experimental results show that Auto-MT saves substantial human effort, and accelerates the process of transforming applications to be MT-enabled.
Article
personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission. Acknowledgement The RAD Lab's existence is due to the generous support of the founding members Google, Microsoft, and Sun Microsystems and of the affiliate members Amazon Web Services, Cisco Systems, Facebook, Hewlett-
Multi-tenancy performance benchmark for web application platforms
  • R Krebs
  • A Wert
  • S Kounev
R. Krebs, A. Wert, and S. Kounev, "Multi-tenancy performance benchmark for web application platforms," in Proceedings of the 13th International Conference on Web Engineering, ser. ICWE'13. Berlin, Heidelberg: Springer-Verlag, 2013, pp. 424-438. [Online]. Available: http://dx.doi.org/10.1002/spe.2320
A study and performance evaluation of the multi-tenant data tier design patterns for service oriented computing
  • Z H Wang
  • C J Guo
  • B Gao
  • W Sun
  • Z Zhang
  • W H An
Z. H. Wang, C. J. Guo, B. Gao, W. Sun, Z. Zhang, and W. H. An, "A study and performance evaluation of the multi-tenant data tier design patterns for service oriented computing," in 2008 IEEE International Conference on e-Business Engineering, Oct 2008, pp. 94-101.
Wordpress features Available: https: //codex.wordpress
  • Wordpress
WordPress. (2002) Wordpress features. [Online]. Available: https: //codex.wordpress.org/WordPress