How to Speed Up Your Joomla! Site
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

How to Speed Up Your Joomla! Site

on

  • 603 views

 

Statistics

Views

Total Views
603
Views on SlideShare
582
Embed Views
21

Actions

Likes
3
Downloads
13
Comments
1

2 Embeds 21

https://twitter.com 20
http://www.slideee.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

How to Speed Up Your Joomla! Site Presentation Transcript

  • 1. HOW TO SPEED UP YOUR JOOMLA SITE? Daniel Kanchev
 Performance Guru
  • 2. Before We Begin – Who’s That Guy Daniel? ✓ 7+ years of Joomla! experience ✓ 5 years with SiteGround ✓ Love travelling the world ✓ Addicted to extreme sports
  • 3. ✓ Site speed affects your Google Rankings! ✓ Keep readers/customers happy & paying ✓ Be able to handle more visitors ✓ Go green and save $$$ from servers WHY BOTHER DOING IT?
  • 4. Faster Joomla = Optimizations ! ! KEEP CALMIT’S NOT ROCKET SCIENCE
  • 5. ✓ Keep your Joomla! updated ✓ Choose extensions wisely ✓ Deactivate unused extensions, upgrade used ✓ Simplify your templates as much as possible GENERAL GUIDELINES
  • 6. Simple Front Page Is Better ✓ Fancy stuff – only if you really need it ✓ Remove unnecessary large images ✓ Use fewer internal/external links – add sitemap ✓ Avoid loading content from remote servers
  • 7. APPLICATION LEVEL OPTIMIZATIONS
  • 8. Enable Compression ✓ Natively supported by Joomla! – no extensions needed ✓ Requires mod_gzip/deflate to be enabled on the server *** Site Global Configuration Server
  • 9. Enable Joomla! Cache ✓ Enable the “System – Cache” plugin
  • 10. Recommended Cache Settings Site Global Configuration System Cache Settings
  • 11. Some .htaccess Magic ✓ Get the code:
 http://goo.gl/ze09B ✓ How it works:
 - Etag – Tells browsers that an image/unit does not need to be reloaded
 - Expires Headers – Set different expiration dates for various file types
 - AddOutputFilterByType DEFLATE – minifies the compiled HTML source code
  • 12. Some .htaccess Magic ✓ The code: FileETag MTime Size 
 AddOutputFilterByType DEFLATE text/html text/css application/javascript
 ExpiresActive On
 ExpiresDefault "now plus 1 hour" 
 ExpiresByType text/css "now plus 1 week“
 ExpiresByType application/javascript "now plus 1 week" 
 ExpiresByType application/x-javascript "now plus 1 week”
  • 13. More Optimizations: Images, CSS & JS ✓ Resize images – never upload 2560x1600 pictures ✓ Smush your images ✓ Minify and combine CSS and JS files ✓ Use image sprites
  • 14. Sounds Nice, How Do I Begin? ✓ Use smush.it ✓ Photoshop/Fireworks ✓ Joomla! Extensions
  • 15. Some Highly Rated Extensions ✓ JCH Optimize – Combines JS and CSS, Combines images in sprites, Minify and Compress ✓ Jbetolo – same as above but + CDN support ✓ JotCache – improves the Joomla! built in Core Cache ✓ Cache Cleaner – easily clean the cache from the Joomla! admin panel
  • 16. JCH Optimize ✓ Enable the “System – JCH Optimize” plugin
  • 17. JCH Optimize Settings
  • 18. Google mod_pagespeed ✓ An open-source Apache module - compress, combine and cache ✓ Needs to be installed/configured by a System Administrator ✓ Available on SiteGround servers *
  • 19. Check How’s Your Website Doing ✓ Google Page Speed Insights - http://goo.gl/zPkxx ✓ YSlow - http://goo.gl/qIios ✓ GTmetrix - http://gtmetrix.com/
  • 20. Some Results – Default Joomla! No Optimizations Cache/ Compression .htaccess rules JCH Page Load Time 1.61s 1.49s 1.32s 1.02s Total Page Size 563KB 162KB 162KB 151KB Number of Requests 35 35 35 19 Page Speed Grade F (41%) B (65%) B (87%) A (91%) YSlow Grade C (70%) B (66%) B (86%) A (92%)
  • 21. SERVER LEVEL OPTIMIZATIONS
  • 22. Use CDN ! YOUR VISITORS LOCATION MATTERS!
  • 23. CDN Features ✓ CDN will make your website faster ✓ CDN will help avoid unneeded I/O on your hard drives ✓ CDN will appeal to both Google and your visitors
  • 24. Software Tweaks ✓ Use fast and secure PHP like FastCGI ✓ Move PHP binaries to RAM ✓ Move TMP to RAM ✓ Move MySQL to a separate hard drive: RAID & SSD ✓ Enable MySQL query cache ✓ Use TMPFS for MySQL’s tmpdir
  • 25. Opcode/Object Caching ✓ FastCGI + APC PHP extension ✓ Memcached and PHP/MySQL ✓ eAccelerator 
  • 26. Joomla Interaction with Your Database ✓ First request goes to the database server
 

  • 27. Object Caching ✓ First request goes to the database server
 ✓ Objects are also stored in Memcached
  • 28. Object Caching ✓ All consecutive requests are forwarded to the Memcached server
  • 29. How PHP works ! Scanning ! Lexing ! Parsing ! Compilation ! Opcode ! Execution
  • 30. ! Opcode ! Execution PHP Opcode Caching
  • 31. Reverse Proxy Servers
  • 32. Reverse Proxy Servers
  • 33. Reverse Proxy Servers
  • 34. Reverse Proxy Servers
  • 35. ✓ Custom PHP/MySQL configuration ✓ Memcached/PHP APC ✓ Joomla! friendly reverse proxy setup Our Own Solution: The SUPERCACHER
  • 36. Final Results: Joomla + VirtueMart No Optimizations Application Level Optimizations Server Level Optimizations Page Load Time 5.22s 3.49s 1.09s Total Page Size 1.89MB 0.67MB 0.67MB Number of Requests 76 28 28 Page Speed Grade F (41%) B (85%) A (92%) YSlow Grade C (70%) B (84%) A (94%)
  • 37. Some Key Takes ✓ Speed optimization is a process – do it regularly ✓ Always test! ✓ Choose a well optimized host
  • 38. QUESTIONS TIME ?
  • 39. THANK YOU! Daniel Kanchev
 daniel.k@siteground.com