Web Services Performance on Commercial Virtual Environment (VMware ESX) Goran Velkoski 1 , Sasko Ristov 2 and Marjan Gusev 3 Abstract – In this paper, we realize several experiments to test the impact of the virtualization technique on web service performance. The experiments are realized on the VMware ESX commercial virtual environment with two sample web services, the first one that is memory demanding only and the second, which is both memory demanding and computationally intensive. Testing methodology is realized on two different environments: host (bare metal) and guest (virtualized) used to share the resources with Windows server and Java based web services. The overall goal is to find the regions where the performance drawbacks that arise due to virtualization are minimal. Keywords – Virtualization, Apache Tomcat, Windows, JAVA I. INTRODUCTION The purpose of a virtualization environment is to improve resource utilization by providing integrated operating platform applications based on heterogeneous and autonomous resources aggregation [1]. Virtualization is a popular technique especially by being the baseline for cloud computing [2]. Most cloud service providers use machine virtualization to provide flexible and cost-effective resource sharing [3]. Additionally, the multifarious resource demands imposed virtualization usage on data centers (DCs) as an infrastructure for data storage and deployment platform [4][5]. There are different levels of virtualization: Full Virtualization, Paravirtualization, Operating System-level Virtualization, and Native Virtualization [6]. Commercial and open source virtualization software solutions are owned by some of the most popular ICT companies such as VMware, Citrix, Microsoft etc. [7-9]. Each virtualization software (VMware Infrastructure, Amazon Elastic Compute Cloud – EC2 etc.) operates on top of a layer of system software, called hypervisor or VMM (virtual machine monitor), inserted between the guest operating system and the underlying hardware [10]. Several hypervisors occupy all datacenters and cloud computing solutions. Most popular are VMware ESXi, KVM, Xen, Microsoft Hyper-V etc. [11-15]. The additional virtualization layer degrades the performance compared to the base system especially for HPC clusters [6][16]. In this paper, we analyze the performance of two web services hosted in VMware virtual environment and measure the performance drawback generated by the additional virtualization layer. We conduct series of experiments for compute and memory web services (WSs) on the same hardware infrastructure hosted on bare metal and virtualized environment. We have set the hypothesis that the virtualized environment will degrade the WSs performance. The rest of the paper is organized as follows. In Section 2, we describe the methodology used for testing. The experiments and the results are presented and discussed in sections 3 and 4. In Section 5, we derive conclusions from the results and we present our plans for future work. II. THE TESTING METHODOLOGY In this section, we present the testing methodology we used to produce reliable testing results. We describe the testing platform along with the infrastructure setup, and the differentiated experiment design and test cases. A. Experiment Environment The testing environment is based on client-server web service architecture. Figure 1 depicts both bare-metal and virtualized experiment environments. For experimental purposes we setup two distinctive server platforms on the same infrastructure that consist of Intel(R) Xeon(R) CPU X5647@2.93GHz with 4 CPU cores and 8GB RAM. We use an Apache Tomcat 6.0 application server installed on Windows Server 2008 to host our Java based WSs named: Concat and Sort described in more detail in the next Section II.B. The difference between the scenarios depicted in Figure 1(a) and Figure 1(b) is the additional virtualization layer which is included only in the virtualization scenario. The servers are installed with VMware ESXi 4.1 and a virtual machine (VM) instance is instantiated and allocated with maximum available resources of the physical machine, i.e., 4 CPU cores and 8GB RAM. The client uses SoapUI [17] to generate server load with a different number of concurrent messages with various size. The client software is deployed on a different machine consisted of the same Intel(R) Xeon(R) CPU X5647 @2.93GHz with 4 cores and 8GB RAM and placed in the same LAN segment with the servers to minimize network latency and to assume that the measured SoapUI response time is the same as the server response time [18], i.e., the network latency can be neglected. 1 Goran Velkoski is with the Ss. Cyril and Methodius, Faculty of Computer Sciences and Engineering, 16 Rugjer Boshkovikj, Skopje, Macedonia, E-mail: velkoski.goran@gmail.com. 2 Sasko Ristov is with the Ss. Cyril and Methodius, Faculty of Computer Sciences and Engineering, 16 Rugjer Boshkovikj, Skopje, Macedonia, E-mail: sashko.ristov@finki.ukim.mk. 3 Marjan Gusev is with the Ss. Cyril and Methodius, Faculty of Computer Sciences and Engineering, 16 Rugjer Boshkovikj, Skopje, Macedonia, E-mail: marjan.gushev@finki.ukim.mk. 211