A Multi-Objective Differential Evolutionary Optimization Method for Performance Optimization of Cloud Application

A Multi-Objective Differential Evolutionary Optimization Method for Performance Optimization of Cloud Application

Xin Du, Youcong Ni, Peng Ye, Ruliang Xiao
DOI: 10.4018/IJCINI.295808
Article PDF Download
Open access articles are freely available for download

Abstract

Due to the limited search space in the existing performance optimization ap-proaches at software architectures of cloud applications (SAoCA) level, it is difficult for these methods to obtain the cloud resource usage scheme with optimal cost-performance ratio. Aiming at this problem, this paper firstly de-fines a performance optimization model called CAPOM that can enlarge the search space effectively. Secondly, an efficient differential evolutionary op-timization algorithm named MODE4CA is proposed to solve the CAPOM model by defining evolutionary operators with strategy pool and repair mechanism. Further, a method for optimizing performance at SAoCA level, called POM4CA is derived. Finally, two problem instances with different sizes are taken to conduct the experiments for comparing POM4CA with the current representative method under the light and heavy workload. The ex-perimental results show that POM4CA method can obtain better response time and spend less cost of cloud resources.
Article Preview
Top

1. Introduction

Performance is not only an important quality attribute of software systems, but also a vital factor to determine success or failure of a system. Cloud platforms(Cusumano, 2010) including cloud infrastructure platform and cloud service platform, provide scalable resource sharing and management services to cloud applications through virtualization technologies. This can strongly ensure the performance of cloud applications. Performance optimization in the design phase of cloud application development can predict the performance of system earlier to support the construction of cloud resource scheme with high cost-performance ratio.

As an important software artifact, the software architecture of cloud application (SAoCA)(Franceschelli et al., 2013) not only describes the structural relationships and behavior interactions among software components, but also gives deployment schemes of these software components on the virtual machine pool. Compared with the traditional SA(Taylor et al., 2009), SAoCA can model the virtual machine resources used by software components with variable workload at any time by resource deployment scheme. But it also brings greater challenges to performance optimization. With the increase of the scale and complexity of cloud application system, a growing number of virtual machine resource pools are used to deploy the software components. And the types of hardware configuration of virtual machines that are provided for resource pools are also increasing. In addition, the number of virtual machines in each resource pool should dynamically be adjusted according to the time-varying workload, which will lead to the increase of the performance optimization space at SAoCA level. For example, a cloud application uses two resource pools, each of which has 100 different types of available virtual machines. Given that the observation interval of virtual machine resources used by the cloud application is set as one day, the resources are allocated every hour according to the workload and 5000 virtual machines can be used in each resource pool every hour at most. Then the number of usage schemes for cloud resource within one day will also exceed 5.96 * 10136. How to find the usage schemes of cloud resources with optimal cost-performance ratio in such a huge space has become a key problem in cloud application development.

To solve this problem, some metaheuristic-based performance optimization methods at SAoCA level have emerged based on the existing achievements on performance modeling and evaluation (Franceschelli et al., 2013), (Guillén et al., 2013; Bacigalupo et al., 2011; Ardagna et al., 2014; Núñez et al., 2012; Chauhan et al., 2015; Alhamazani et al., 2014; Merkel 2014; Kumar et al., 2014; Sefraoui et al., 2012; Graham & Liu 2014; Hua et al., 2010. Zheng et al (2010) obtained better response time of cloud application by using ant colony algorithm to optimize resource allocation. To reduce the cost of cloud resources, Pandey(2010) applied particle swarm optimization algorithm to optimize cloud resource scheduling. Ardagna et al (2014), (Ciavotta et al., 2017) proposed a two-stage optimization method to improve search efficiency and quality by combing mixed integer linear programming(Kondili et al., 1993) and Tabu algorithm(Glover, 1989). At present, most of the existing metaheuristic-based methods (Wang et al., 2018; Li et al., 2019; Li et al., 2018; Wang et al., 2019) abstract the performance optimization problem that satisfying the performance requirements and minimizing the usage cost of cloud resources at SAoCA level into a single objective optimization problem. It leads to the limited search space so that the usage scheme of cloud resource with optimal cost-performance ratio is hard to be obtained. To address the above limitations, we propose a new performance optimization approach at SAoCA level, named POM4CA. The main contributions of this paper are as follows:

Complete Article List

Search this Journal:
Reset
Volume 18: 1 Issue (2024)
Volume 17: 1 Issue (2023)
Volume 16: 1 Issue (2022)
Volume 15: 4 Issues (2021)
Volume 14: 4 Issues (2020)
Volume 13: 4 Issues (2019)
Volume 12: 4 Issues (2018)
Volume 11: 4 Issues (2017)
Volume 10: 4 Issues (2016)
Volume 9: 4 Issues (2015)
Volume 8: 4 Issues (2014)
Volume 7: 4 Issues (2013)
Volume 6: 4 Issues (2012)
Volume 5: 4 Issues (2011)
Volume 4: 4 Issues (2010)
Volume 3: 4 Issues (2009)
Volume 2: 4 Issues (2008)
Volume 1: 4 Issues (2007)
View Complete Journal Contents Listing