Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Website Performance on Shared Hosting (the JB method)

Website Performance on Shared Hosting (the JB method)

Get great performance for your WordPress website even on low cost, shared hosting. Use these free plugins, techniques and configuration changes to get the most from your site. (This method was 1st described by Jon Brown @JB510)

Andy Roberts

January 17, 2013
Tweet

More Decks by Andy Roberts

Other Decks in Technology

Transcript

  1. High Performance
    websites on
    Shared Hosting
    - Andy Roberts

    View Slide

  2. Andy Roberts
    @andylroberts
    props to
    The Jon Brown!
    @jb510

    View Slide

  3. Three Steps to WP Performance
    1.Inside WordPress
    2.On your Shared Server
    3.Off your Shared Server

    View Slide

  4. 0
    Step Zero
    Prelims

    View Slide

  5. Behold, The Patient

    View Slide

  6. View Slide

  7. Will he?
    Free, Free, Free! Performance Tweaks
    you can make on or with most shared
    hosting (these could help any hosting
    setup). And they are all no cost, as in
    free.

    View Slide

  8. or won’t he?
    Geeky tweaks that are only suitable on
    VPS/Dedicated servers
    (i.e. Memcached, Hyper DB, NginX, etc.)

    View Slide

  9. Where to find the advanced?
    http://wordpress.tv
    Joseph Scott, Barry Abrahamson
    Ilya Grigorik, Iliya Polihronov
    & others...

    View Slide

  10. Measuring Shared Server
    Performance
    • Guess what the experts say?
    • http://www.webpagetest.org

    View Slide

  11. But I thought...
    •FireBug
    •YSlow
    •PageSpeed
    •WebKit DevTools

    View Slide

  12. webpagetest.org

    View Slide

  13. View Slide

  14. Sharing,
    despite what mom tought...
    •not optimized any site
    •generalized solution
    •can’t touch many server settings
    •Ha Eva, there are things we can do

    View Slide

  15. Goal!
    This is Performance Optimization
    •Minimize HTTP requests
    •Lower Total data transfer
    •Limit CPU load
    •Eliminate Bottlenecks

    View Slide

  16. 1
    Step One
    Inside
    WordPress

    View Slide

  17. Inside WordPress
    1.Images
    2.404s
    3.DB control
    4.WordPress based Caching

    View Slide

  18. Images
    •Upload the max size needed
    •Compress to 60-70% (aka 7 out of 12
    in Photoshop)
    •WP Smush.it

    View Slide

  19. View Slide

  20. Bulk Smush.it

    View Slide

  21. 24.94s
    4.60s

    View Slide

  22. 6.67s
    1.66s

    View Slide

  23. 404s
    •WebPageTest.org
    •FireBug / Webkit Dev Tools

    View Slide

  24. Control you WP DB
    •Optimize DB
    Plugin - WP DB Manager
    •Tame Revisions
    Plugin - Revision Control

    View Slide

  25. 6.49s
    1.66s

    View Slide

  26. Caching WordPress
    •W3 Total Cache
    •WP Super Cache
    •WP Minify

    View Slide

  27. Caching WordPress
    •W3 Total Cache
    •WP Super Cache - Easy
    •WP Minify

    View Slide

  28. Do’s & Dont’s
    •Test, test, test
    •Turn it up to 11!
    •Maximize the minify
    •Prime your cache

    View Slide

  29. 6.2s
    1.2s

    View Slide

  30. WP Super Cache Advanced
    •mod_rewrite
    •Compress Pages

    View Slide

  31. 6.04s
    1.2s

    View Slide

  32. 2
    Step Two
    On your Server

    View Slide

  33. On your Server
    •PHP Version
    •Apache Compress
    •Cloudflare (if you’re lucky)

    View Slide

  34. PHP
    •PHP Version 5.2.17
    •5.3 15% faster - Dmitry Stogov http://
    news.php.net/php.internals/36484
    •PHP 5.4 is even faster

    View Slide

  35. How?
    •Call
    •cPanel
    •.htaccess via AddHandler

    View Slide

  36. Apache Level File Compression
    Direct your Web Server (Apache) to
    compress the files on the way out the
    door

    View Slide

  37. View Slide

  38. 5.16s
    0.995s

    View Slide

  39. 3
    Step Three
    Off your Server

    View Slide

  40. CloudFlare
    free awesomeness
    Content Delivery Network (CDN)
    + Site Optimizer
    + Security

    View Slide

  41. Use Cloudflare Name Servers
    Your site is served from Cloudflare

    View Slide

  42. Cloudflare Setup
    1.Set up free Account
    2.They Scan DNS and pull it
    3.You Repoint Nameservers (wait)

    View Slide

  43. View Slide

  44. Where does that get us?

    View Slide

  45. View Slide

  46. Before
    Theme
    upgrade
    90s

    View Slide

  47. Theme!?!
    WebPageTest
    doesn’t
    recognize
    CloudFlare as
    a CDN

    View Slide

  48. 0
    7.5
    15.0
    22.5
    30.0
    Baseline Smush.it Opt DB C. - Easy C. - Adv Apache Cloudflare
    1st Load
    2nd Load
    Home Page Load Times

    View Slide

  49. 0
    7.5
    15.0
    22.5
    30.0
    Baseline Smush.it Opt DB C. - Easy C. - Adv Apache Cloudflare
    1st Load
    2nd Load
    Home Page Load Times
    24.9s
    4.9s

    View Slide

  50. 0
    7.5
    15.0
    22.5
    30.0
    Baseline Smush.it Opt DB C. - Easy C. - Adv Apache Cloudflare
    1st Load
    2nd Load
    Home Page Load Times
    24.9s
    4.9s
    4.7s
    0.7s

    View Slide

  51. 0
    7.5
    15.0
    22.5
    30.0
    Baseline Smush.it Opt DB C. - Easy C. - Adv Apache Cloudflare
    1st Load
    2nd Load
    Home Page Load Times
    24.9s
    4.9s
    4.7s
    0.7s

    View Slide

  52. That’s it!

    View Slide

  53. Andy Roberts
    @andylroberts
    http://booktrope.com
    http://robertsstragegies.com
    http://note15.com

    View Slide