Comparison of Web Server Architectures: a Measurement Study



Similar documents
Microsoft Windows Server 2003 with Internet Information Services (IIS) 6.0 vs. Linux Competitive Web Server Performance Comparison

Quantifying the Performance Degradation of IPv6 for TCP in Windows and Linux Networking

SERVER CLUSTERING TECHNOLOGY & CONCEPT

How To Test For Performance And Scalability On A Server With A Multi-Core Computer (For A Large Server)

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM?

Development and Evaluation of an Experimental Javabased

Evaluating HDFS I/O Performance on Virtualized Systems

MedInformatix System Requirements

TCP Servers: Offloading TCP Processing in Internet Servers. Design, Implementation, and Performance

One Server Per City: C Using TCP for Very Large SIP Servers. Kumiko Ono Henning Schulzrinne {kumiko, hgs}@cs.columbia.edu

Enabling Technologies for Distributed Computing

Performance of Host Identity Protocol on Nokia Internet Tablet

Delivering Quality in Software Performance and Scalability Testing

A Statistically Customisable Web Benchmarking Tool

Optimization of Cluster Web Server Scheduling from Site Access Statistics

HyLARD: A Hybrid Locality-Aware Request Distribution Policy in Cluster-based Web Servers

Exploiting Remote Memory Operations to Design Efficient Reconfiguration for Shared Data-Centers over InfiniBand

Enabling Technologies for Distributed and Cloud Computing

Performance Modeling and Analysis of a Database Server with Write-Heavy Workload

System Requirements Table of contents

Variations in Performance and Scalability when Migrating n-tier Applications to Different Clouds

Quantifying TCP Performance for IPv6 in Linux- Based Server Operating Systems

The Three-level Approaches for Differentiated Service in Clustering Web Server

SIDN Server Measurements

Analysis of Delivery of Web Contents for Kernel-mode and User-mode Web Servers

TheImpactofWeightsonthe Performance of Server Load Balancing(SLB) Systems

A Performance Study on Internet Server Provider Mail Servers

Business white paper. HP Process Automation. Version 7.0. Server performance

A Content-Based Load Balancing Algorithm for Metadata Servers in Cluster File Systems*

Scalability Factors of JMeter In Performance Testing Projects

A Performance Analysis of Secure HTTP Protocol

Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging

Performance Analysis of Web based Applications on Single and Multi Core Servers

COLO: COarse-grain LOck-stepping Virtual Machine for Non-stop Service

Globus Striped GridFTP Framework and Server. Raj Kettimuthu, ANL and U. Chicago

D1.2 Network Load Balancing

Improving the Database Logging Performance of the Snort Network Intrusion Detection Sensor

Experimental Evaluation of Horizontal and Vertical Scalability of Cluster-Based Application Servers for Transactional Workloads

Distributed applications monitoring at system and network level

PERFORMANCE ANALYSIS OF KERNEL-BASED VIRTUAL MACHINE

High Performance Data-Transfers in Grid Environment using GridFTP over InfiniBand

Benchmarking Cassandra on Violin

Web Application s Performance Testing

An Architectural study of Cluster-Based Multi-Tier Data-Centers

Introduction. Application Performance in the QLinux Multimedia Operating System. Solution: QLinux. Introduction. Outline. QLinux Design Principles

Real-Time Analysis of CDN in an Academic Institute: A Simulation Study

Performance test report

Test Equipment Depot Washington Street Melrose, MA TestEquipmentDepot.com. Application Advisor

Monitoring high-speed networks using ntop. Luca Deri

Energy-aware Memory Management through Database Buffer Control

Introduction 1 Performance on Hosted Server 1. Benchmarks 2. System Requirements 7 Load Balancing 7

Virtualised MikroTik

PERFORMANCE ANALYSIS OF WEB SERVERS Apache and Microsoft IIS

Eloquence Training What s new in Eloquence B.08.00

Optimizing Shared Resource Contention in HPC Clusters

Cloud Performance Benchmark Series

Using TrueSpeed VNF to Test TCP Throughput in a Call Center Environment

LCMON Network Traffic Analysis

Netfilter Performance Testing

Microsoft Exchange Server 2003 Deployment Considerations

Exploring RAID Configurations

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance.

A Performance Study of VoIP Applications: MSN vs. Skype

JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers

Self-Adapting Load Balancing for DNS

Quality of Service on the Internet: Evaluation of the IntServ Architecture on the Linux Operative System 1

Web servers under overload: How scheduling can help

Internet Content Distribution

Performance Evaluation of VMXNET3 Virtual Network Device VMware vsphere 4 build

Agenda. Capacity Planning practical view CPU Capacity Planning LPAR2RRD LPAR2RRD. Discussion. Premium features Future

Load Balancer Comparison: a quantitative approach. a call for researchers ;)

Communicating with devices

Improving HTTP-based Video Performance using Network Flow Buffering

Post Genie TM WebMail Server 2400/2208R

Performance Characteristics of VMFS and RDM VMware ESX Server 3.0.1

Deploying in a Distributed Environment

Benchmarking the Performance of XenDesktop Virtual DeskTop Infrastructure (VDI) Platform

OpenFlow Switching: Data Plane Performance

AlphaTrust PRONTO - Hardware Requirements

Web Server Architectures

Network Performance Evaluation of Latest Windows Operating Systems

Performance Analysis of IPv4 v/s IPv6 in Virtual Environment Using UBUNTU

Throughput Capacity Planning and Application Saturation

by Kaleem Anwar, Muhammad Amir, Ahmad Saeed and Muhammad Imran

Muse Server Sizing. 18 June Document Version Muse

HP reference configuration for entry-level SAS Grid Manager solutions

Optimal Bandwidth Monitoring. Y.Yu, I.Cheng and A.Basu Department of Computing Science U. of Alberta

USING VIRTUAL MACHINE REPLICATION FOR DYNAMIC CONFIGURATION OF MULTI-TIER INTERNET SERVICES

The Lagopus SDN Software Switch. 3.1 SDN and OpenFlow. 3. Cloud Computing Technology

Client-aware Cloud Storage

Tableau Server 7.0 scalability

Transcription:

Comparison of Web Server Architectures: a Measurement Study Enrico Gregori, IIT-CNR, enrico.gregori@iit.cnr.it Joint work with Marina Buzzi, Marco Conti and Davide Pagnin Workshop Qualità del Servizio nei Sistemi Geograficamente Distribuiti 9-10 Giugno 2004 Palazzo Mattei - Villa Celimontana, Roma

Motivation We started a study an geographically replicated WEB servers during the sabbatical year that Prof. Fabio Panzieri spent in CNR The Quality of Service perceived by users is the dominant factor for the success of an Internet-based web service and the target of geographical replication is to improve it by bringing the information closer to the user Geographical replication has significant impact on the server load and policies for geographical replication cannot be evaluated without a precise characterization of the web server behavior

Selected Previous papers Conti, M. Gregori, E. Panzieri, F. Load Distribution among Replicated Web Servers: A QoS-based Approach, Proc. Second ACM Workshop on Internet Server Performance (WISP'99), Atlanta, Georgia, May 1, 1999. Conti, M. Gregori, E. Panzieri, F. QoS-based Architecture for Geographically Replicated Web Servers, Cluster Computing Journal, 4, 2001, pp. 105-116. Conti, M. Gregori, E., Lapenna, W. Content Delivery Policies in Replicated Web Services: Client-side vs Server-side, Cluster Computing Journal (to appear). Conti, M. Gregori, E., Lapenna, W. Client-Side Content Delivery Policies in Replicated WebServices: Parallel Access vs. Single Server Approach, Performance Evaluation Journal (to appear).

Motivation for Replicated WEB Servers Performing data distribution structure closer to Internet structure Client side vs Server side

Objective of this study An accurate model of the web server behavior is essential for evaluating policies for replicated web server web servers We initially started using simple queueing models to characterize the WEB servers but we need an environment for measuring performance of real servers To understand the key elements in web server performance creation of a controlled test-bed environment which allows to analyze web server performance in a simple and effective way analysis of two different web server architectures and their performances, with particular focus on discovering bottlenecks

HTTP &TCP and Overload

Measurement of a live system The approach of directly evaluating performances of a real web server suffers from difficulties related to irreproducibility of real workloads highly unpredictable behavior of the Internet need for non-intrusive measurement of a live system

Measurement of a live system The alternative is evaluation through generation of synthetic HTTP client traffic in a controlled environment requires great care as there several parameters limiting the performance.

Synthetic Workload Generation Tool Httperf is capable of sustaining server overload leaves a nearly total freedom as to the kind of workload and measurements to be performed Parameters number of HTTP requests/sec total number of requests to perform users think time request timeout... It is crucial to avoid exhausting the available sockets of the load generator.this means that starting from about 60,000 total available sockets and considering that the TCP TIME_WAIT status lasts 60 seconds in many TCP implementations, we have about 1,000 sockets available per second. Furthermore, we have to consider the chosen request timeout and divide those 1,000 available sockets by the request timeout, and then subtract the mean number of established connections to get an idea of the limit of maximum number of requests per second that a single client machine can generate

Introducing WAN impact Dummynet for introducing WAN delays in the router machine Flexible tool to modify delay and throughput, i.e., good modeling of the Internet bottleneck

Web Server Architectures Single-process architecture: Boa 0.94.13 has a very efficient and lightweight implementation with very low memory requirements Multi-thread architecture: Apache2 the newest implementation of the most popular generalpurpose web server

Experimental test-bed environment Web server ASUS TX97E motherboard with Intel 430TX chipset and with 128Mb of memory, OS Linux Redhat 7.3 to evaluate the influence of the processor, we switched from a Pentium 133Mhz to a Pentium MMX 200Mhz Low speed processor are needed to be able to reach saturation condition

Experimental test-bed environment Clients 5-10 clients running httperf: Linux Redhat 7.3, with 2.4.18-19.7.x kernel rpm version and no active firewall HW ranged from K6 III at 450Mhz to Athlon XP 2000+ all systems were equipped with full duplex Fast-Ethernet network card and system memory between 256Mb and 512Mb

Experimental test-bed environment WAN simulator gateway: a dual Pentium III at 1GHz with 1Gb of memory and 2 Fast-Ethernet network adapters, with FreeBSD 4.7 release and dummynet option enabled Dummynet configured to simulate a population of 20% ADSL (128/256Kbit/sec) and 80% MODEM (56Kbit) connections with a RTT delay of 200msec

Performance indexes Average connection setup time Average response time Average transfer time Server throughput calculated by summing up all the bytes transferred by a connection divided by the duration of the experiment (summed up for all the httperf instances) Completed requests per second

Maximum Server Throughput: Cached Files Boa server, Pentium MMX 200Mhz, 7K single file Server Throughput 4500 4000 3500 3000 KB/sec 2500 2000 1500 1000 500 0 0 100 200 300 400 500 600 700 800 900 1000 requests/sec

Maximum Server Throughput: Cached Files Boa server, Pentium MMX 200Mhz, 7K single file, Modem access Modem - Average Total Connection Time Connection Setup Response Transfer msec 4000 3500 3000 2500 2000 1500 1000 500 0 50 150 250 350 450 550 650 requests/sec 750 850 950

From Cached to Memorymapped Files Boa server, single cached file vs 28K mmap-ed files Average Response Time MODEM-cached MODEM-mmap-ed msec 560 540 520 500 480 460 440 420 400 50 75 100 125 150 requests/sec

Server Architectures: Singleprocess versus Multi-threaded Pentium 133Mhz, 2500 different mmap-ed files Boa 0.94.13 - Server Throughput 4K Files 12K Files 28K Files Apache 2.0.39 - Server Throughput 4K Files 12K Files 28K Files KB/sec 5000 4000 3000 2000 1000 0 KB/sec 3000 2500 2000 1500 1000 500 0 0 50 100 150 200 250 requests/sec 300 350 400 0 50 100 150 200 250 requests/sec 300 350 400

Impact of the Processor Files size 12K, Pentium 133 and 200MMX processors Server Throughput boa - P133 boa - P200MMX apache2 - P133 apache2 - P200MMX 5000 4000 3000 2000 1000 0 75 100 125 150 175 200 225 250 275 300 325 350 375 400 425 KB/sec requests/sec

DISK Accessed Files Files size 12K, Pentium 133 and 200MMX processors KB/sec 1200 1000 800 600 400 200 0 Server Throughput boa apache2 50 55 60 65 70 75 80 85 90 requests/sec

Summary Performance measurements of real systems with controllable network and load parameters are extremely important Preliminary results indicate: The multi-thread architecture (i.e. Apache2) is CPU intensive but is less penalized by disk access Disk access is the most limiting factor for the server throughput User perceived QoS degrades greatly when the server is overloaded