This document provides an overview of techniques for building scalable and high performance websites, including definitions of scalability, approaches to avoiding failure, load balancing, caching, and tools for analyzing website speed such as YSlow and PageSpeed. Specific techniques discussed include horizontal and vertical scalability, monitoring, release cycles, fault tolerance, static content delivery, memcached, and APC caching.