optimized-lamp-stack

Summary

The goal is to build an Ubuntu Maverick server LAMP stack optimized for ARM v7 architectures (such as Cortex A8/A9). As an essential foundation for future web & cloud infrastructure the LAMP stack on ARM needs to be analyzed, optimized and validated for enterprise deployments. Use of an industry standard benchmark (such as SPECWeb200x) is proposed to establish baseline performance and aid identification of potential opportunities for optimizations.

Feedback on required features, packages and methodology are needed.

Rationale

Recent increases in the cost of energy, and the cost of hosting servers, has created a demand for low power/high performance alternatives to running Linux on x86 architecture machines. The upcoming Natty release cycle is an opportunity to initiate Ubuntu onto ARM servers and clouds. This effort would focus on analysis and optimization of key LAMP stack packages as a foundation to fully featured server releases on ARM.

Design

ARM builds are now mature since UDS-L, and almost all critical server packages are being built, however they are not optimized and validated for enterprise deployment. Focusing on the definition, analysis, optimization and validation of a server LAMP stack will form a foundation for fully featured server and cloud distributions on ARM.

A target subset of key features & packages will be identified and documented under this blueprint. Builds and preliminary testing can be performed on those packages to establish current status before any optimization / validation work begins. This process may identify additional related packages / blueprints necessary to achieve the final goal.

LAMP Packages

Target packages will go here. An initial high level list: -

  • Linux kernel optimized for ARM v7
    • Memory optimizations (linked to existing Blueprint for memory footprint reduction?)
    • I/O optimizations
      • Networking (including TCP/IP, SSL & others?)

      • SATA
      • Other?
  • Web Servers/Reverse Proxy/Load Balancer
    • Apache
    • Lighttpd
    • Nginx
    • Cherokee
    • HAproxy
    • Squid
  • Databases
    • MySQL
    • PostgreSQL
  • Scripting environments – PHP, Python & Perl

    • PHP5
      • PHP accelerators: APC, eAcelerator
    • Python
    • Perl
  • Memcached

ARM v7 Optimized GNU/Linux OS

ARM v7 optimized GNU/Linux OS as a whole is outside the scope of this blueprint; however areas of focus specific to the LAMP stack may be identified as a result of this effort. Such instances will be reviewed for appropriate next steps – covered elsewhere? Warrant dedicated blueprints etc...?

Build System

TBD - dependent on UDS discussions

Implementation

TBD - dependent on UDS discussions

UDS agenda and discussion

Discussion notes on ARM/Optimized LAMP stack will be mirrored here from session notes.

ARM/optimized-lamp-stack (last edited 2010-11-03 17:44:09 by kiko)