ApacheCon Europe 2012

Rhein-Neckar-Arena, Sinsheim, Germany

5–8 November 2012

Performance: Scaling the Web with Apache

Igor Galić

Audience level:
Intermediate
Track:
Web Infrastructure

Tuesday 1 p.m.–1:45 p.m. in Level 1 Right

Description

Accelerating web application performance weighs heavily on developers and administrators. Despite an increasing need to optimize performance, the task never seems to get any easier; particularly given the new emphasis on cloud technologies. We will demystify performance, and how to increase it through effective interplay of the OS, App servers, the application itself, and system architecture.

Abstract

Performance: Scaling the Web with Apache

Accelerating performance of web applications weighs heavily on both, developers and systems administrators.

Despite the ever increasing need to optimize web application performance, the task never seems to get any easier. This is particularly true given the new emphasis on cloud technologies. In this talk, Igor will demystify the ever elusive performance, and how to increase it through effective interplay of the operating system, application server, the application itself and system architecture.

Systems

We will discuss how the apparently elusive performance tuning applies to an ever increasing cloud environment, and when to invest in more infrastructure as opposed to fixing what is obviously broken. This section is also where we learn the basic tool set for performance analysis.

Discussed Concepts: * USE Method

Web and Application Servers

Here we will talk about the magical configuration switches that make Apache Tomcat, httpd, and Trafficserver squeeze the last bit of performance from the underlying system. The actual goal is to impart a skill so that our audience may be able to apply these patterns to other application servers as well.

Discussed Concepts: Chosing a "Scheduler" Living with the consequences of this choice Tuning the scaling of threads… while staying within sane memory limits

Beware of Context Switches Slow Disk Access

Web Applications

We will discuss why web applications are slow and how to we make them faster. Giving a quick run down of popular programming environments, common caveats and how to mitigate those, we will finally touch on the most important subject: How to Cheat.

Discussed Concepts: PHP, Ruby, and Java memory woes Performance testing Profiling dynamic web applications How to cheat

Beware of Slow Disk Access Slow Databases

Architecture

In this section we will take a close up on high performance applications, built from the ground with performance and scalability in mind.

Discussed Concepts: * Architectural choices that affect performance or scalability

Beware of: * People who call themselves architects