A crash course inscaling wordpress
Embed Size (px)
Transcript of A crash course inscaling wordpress
- 1. A Crash Course inScaling WordPress
2. A Crash Course inScaling WordPressor: let me at leastshow you what is possible(in 8 minutes) 3. A Crash Course inScaling WordPressor: let me at leastshow you what is possible(in 8 minutes) 4. A Crash Course inScaling WordPressor: let me at leastshow you what is possible(in 8 minutes)[and then Ill take questions] 5. Andrew Nacin Lead Developer for WordPress Washington, D.C. Work for WP founder Matt Mullenweg(Dont work for Automattic or WP.com) Full time on WordPress (the project)and WordPress.org (the site) 6. WordPress can scale(no, really!) 7. WordPress can scale(and its easy!) 8. nginx 9. nginx 10. nginx 11. nginx 12. nginx 13. nginx(with PHP-FPM) 14. nginx is a web server (like Apache or IIS) nginx is better nginx is so much better it isnt even funny Well-tuned Apache can serve a few hundredrequests a second nginx can serve 10,000 requests/sec and up 15. nginx can be a request router/load balancer (layer 7) load balancer(layer 4) front end proxy (often proxying to Apache) web server (using PHP-FPM) cache (fastcgi_cache and proxy_cache) 16. nginx can be a request router/load balancer (layer 7) load balancer(layer 4) front end proxy (often proxying to Apache) web server (using PHP-FPM) cache (fastcgi_cache and proxy_cache)and it is all of these things for WP.com and WP.org 17. If you cant switch out Apache(because reasons)Try to still still use nginxas a front-end proxyand caching layer 18. At the PHP level:Use the latest version of PHPfor security and performanceTurn on PHP opcode cache,also called a PHP accelerator APC (until PHP 5.5) Zend Optimizer+ (PHP 5.5 and up) 19. Inside WordPress (Objects)Enable object caching in WordPress stores objects in a key-value store likeAPC, Memcached, Redis, and WinCache APC for one server, Memcached for multiple avoids database queries improves speed and performance lowers memory consumption 20. Inside WordPress (DB)Have multiple database servers?Use HyperDB by Automattic. splitting reads/writes master/slave setups DB failover sharding multiple databases multiple datacenters (mind blown) 21. Inside WordPress (Debugging) Use the Debug Bar pluginby the WordPress core team Its like Firebug or the Web Inspector,but for WordPress Inspect queries, cache hits, performance Watch for errors and deprecated notices General debugging Look for issues with themes and plugins 22. Inside WordPress (Page Caching) Temporarily Caching entire pages andserving those pages as fast as possible nginx can do most of this for you Batcache by Automattic(You may have also heard ofW3 Total Cache & WP Super Cache) 23. At the hardware level:(Solid-State Drives)SSDs 24. one server, 10,000 requests/sec864,000,000requests a day 25. firstname.lastname@example.org Questions?