Scaling PHP Applications Front Cover

Scaling PHP Applications

  • Length: 177 pages
  • Edition: 1
  • Publisher:
  • Publication Date: 2013-02-17
  • ISBN-10: B00BHN3SVW
  • Sales Rank: #1852365 (See Top 100 Books)
Description

I spent 3 years scaling Twitpic to over 60 million visitors and 20 billion HTTP Requests. I’m sharing everything I’ve learnt in this ebook so you can skip over the trial-and-error and head straight to the techniques.

Covers the entire stack- Nginx, MySQL, Redis

In-Depth MySQL Tuning

We discuss each parameter, why it exists, and how to tune it.

Nginx and PHP-FPM

Move away from Apache and learn how to tune Nginx/PHP-FPM.

Redis and Memcached

We discuss scaling sessions, Russian Doll Caching, and the “dogpile”.

Result-proven techniques

This content doesn’t exist anywhere else

When I set out to write Scaling PHP Apps, my goal was to write about topics that didn’t really exist anywhere else. This isn’t regurgitated documentation- it’s real life scaling techniques, mixed with case studies and in-depth exploration. Make no mistake, this is a highly technical book, and you should already be comfortable with PHP.

If you’ve ever researched scaling, you know nothing like this book really exists anywhere else. It’s an important book that’ll save you hours of research and testing. Readers have told me it’s blown their expectations away and that they’ve implemented hundreds of tidbits into their stack.

This book is filled with 150-pages of real-life, practical content. Changes that you can implement today!

  • Settle the Persistent Connection debate (with benchmarks)
  • Detailed explination of each important MySQL Setting
  • Understand exactly how NUMA impacts MySQL
  • Why you should scrap Apache and mod_php
  • Bugs in Memcached you’ve never heard about
  • How DNS lookups can crash your whole application
  • Clever uses of Redis for stats and performance
  • How to debug PHP with strace and xhprof
  • Ways to benchmark MySQL, HAProxy, Nginx, and PHP

Table of Contents

  • Preface
  • Ditching the LAMP Stack
  • DNS: Why you need to care
  • Load Balancing with HAProxy
  • App Server: Horizontal Scaling with Nginx and PHP-FPM
  • Database Server: Ultimate MySQL Tuning Guide
  • Cache Server: Using Redis
  • Worker Server: Asynchronous Resque Workers
  • Coding and Debugging at Scale
  • Parting Advice
  • Case Study: Horizontally scaling user uploads
  • Case Study: How DNS took down Twitpic down for 4 hours
  • Case Study: Scaling MySQL Vertically (10 to 3 MySQL Servers w/ SSDs)
  • Case Study: Hot MySQL Backups w/ Percona
  • Case Study: Async APIs w/ Kestrel saved my butt
  • Case Study: The missing guide to Memcached
  • Case Study: HTTP Caching and the Nginx Fastcgi Cache
  • Case Study: CakePHP Framework Caching
  • Case Study: Optimizing image handling in PHP
  • Case Study: Benchmarking and Load Testing Web Services
  • Sponsors
To access the link, solve the captcha.