To a thousand servers and beyond: scaling a massive PHP application
WordPress.com is an Alexa Top 20 web website, we get more than 100 million page views per day and 99% of the backend is PHP.
The service has seen tremendous growth in the past couple of years. The presentation will explain how the system and copes with the load. This includes explanation of the software stack, scaling techniques and sharing lots of experience and real-life stats.
Here are some of the topics covered:
- Load balancers - PHP-FPM - Page-level caching - Object caching at the application level - Fail-safe and inexpensive serving of terabytes of user-uploaded files per day - Scaling MySQL databases - Distributing SQL queries between many servers with HyperDB - Asynchronous jobs system in PHP - 20 seconds deploy on a thousand servers, tens times per day - Staging servers for developers
I am Nikolay Bachiyski and I am long-time WordPress contributor. I spend my busy time working for Automattic -- the company behind WordPress.com and other cool stuff. Although I am not a systems guy, I think more developers should be interested in servers and scaling -- specialization is for insects.
I also teach at Sofia University, organize TEDxBG, and have a bear.