0
HOW TO SPEED UP YOUR
JOOMLA SITE?
Tenko Nikolov
CEO, SiteGround
Before We Begin – Who’s That Guy Tenko?
 17+ Years IT Experience

 8+ Years CEO of SiteGround
 7+ years of Joomla! Expe...
WHY BOTHER DOING IT?
 Site speed affects your Google

Rankings!
 Keep readers/customers happy &

paying
 Be able to han...
Faster Joomla! = Optimizations

KEEP
CALM
IT’S NOT
ROCKET
SCIENCE
GENERAL GUIDELINES
 Keep your Joomla! updated
 Choose extensions wisely

 Deactivate unused extensions, upgrade used
 ...
Simple Front Page Is Better
 Fancy stuff – only if you really need it

 Remove unnecessary large images
 Use fewer inte...
APPLICATION LEVEL
OPTIMIZATIONS
Enable Compression
 Natively supported by Joomla! – no extensions needed

 Requires mod_gzip/deflate to be enabled on th...
Enable Joomla! Cache


Enable the “System – Cache” plugin
Recommended Cache Settings
Site

Global Configuration

System

Cache Settings
Some .htaccess Magic


Get the code:
http://goo.gl/ze09B



How it works:
- Etag – Tells browsers that an image/unit doe...
Some .htaccess Magic
 The code:
FileETag MTime Size
AddOutputFilterByType DEFLATE text/html text/css application/javascri...
More Optimizations: Images, CSS & JS
 Resize images – never upload 2560x1600 pictures

 Smush your images
 Minify and c...
Sounds Nice, How Do I Begin?

 Use smush.it
 Photoshop/Fireworks

 Joomla! Extensions
Some Highly Rated Extensions
 JCH Optimize – Combines JS and CSS,

Combines images in sprites, Minify and
Compress
 Jbet...
JCH Optimize
 Enable the “System – JCH Optimize” plugin
JCH Optimize Settings
Google mod_pagespeed

 An open-source Apache module - compress, combine

and cache
 Needs to be installed/configured by ...
Check How’s Your Website Doing
 Google Page Speed Insights -

http://goo.gl/zPkxx
 YSlow - http://goo.gl/qIios
 GTmetri...
Some Results – Default Joomla!
No
Optimizatio
ns

Cache/
Compressi
on

.htacce
ss rules

JCH

Page Load Time

1.61s

1.49s...
SERVER LEVEL
OPTIMIZATIONS
Use CDN
YOUR VISITORS
LOCATION
MATTERS!
CDN Features
 CDN will make your website faster
 CDN will help avoid unneeded I/O on your hard

drives
 CDN will appeal...
Software Tweaks
 Use fast and secure PHP like FastCGI
 Move PHP binaries to RAM
 Move TMP to RAM
 Move MySQL to a sepa...
Opcode/Object Caching
 FastCGI + APC PHP extension
 Memcached and PHP/MySQL

 eAccelerator
Joomla Interaction with Your
Database

 First request goes to

the database server
Object Caching

 First request goes to

the database server
 Objects are also

stored in Memcached
Object Caching

 All consecutive

requests are
forwarded to the
Memcached server
How PHP works


Scanning



Lexing



Parsing



Compilation



Opcode

 Execution
PHP Opcode Caching

 Opcode

 Execution
Reverse Proxy Servers
Reverse Proxy Servers
Reverse Proxy Servers
Reverse Proxy Servers
Our Own Solution: The
SUPERCACHER
 Custom PHP/MySQL

configuration
 Memcached/PHP APC
 Joomla! friendly reverse proxy

...
Final Results: Joomla + VirtueMart
No
Optimizatio
ns

Application
Level
Optimizations

Server Level
Optimization
s

Page L...
Some Key Takes
 Speed optimization is a process – do it regularly
 Always test!

 Choose a well optimized host
QUESTION
S TIME
We now have something special for
Australia!






Free .com.au domain
24/7 Aussie toll free
Payments in AUD
JoomlaDay Sydney Exclusive Offer

Get It At:

www.siteground.com/australia
THANK YOU!
Tenko Nikolov
tenko@siteground.com @tnikolov
Speed up Your Joomla Site for Ultimate Performance
Upcoming SlideShare
Loading in...5
×

Speed up Your Joomla Site for Ultimate Performance

1,225

Published on

Presented at JoomlaDay Sydney 2013 by Tenko Nikolov , CEO, SiteGround.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,225
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
35
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Speed up Your Joomla Site for Ultimate Performance"

  1. 1. HOW TO SPEED UP YOUR JOOMLA SITE? Tenko Nikolov CEO, SiteGround
  2. 2. Before We Begin – Who’s That Guy Tenko?  17+ Years IT Experience  8+ Years CEO of SiteGround  7+ years of Joomla! Experience  Love travelling the world  Addicted to fast things &
  3. 3. WHY BOTHER DOING IT?  Site speed affects your Google Rankings!  Keep readers/customers happy & paying  Be able to handle more visitors
  4. 4. Faster Joomla! = Optimizations KEEP CALM IT’S NOT ROCKET SCIENCE
  5. 5. GENERAL GUIDELINES  Keep your Joomla! updated  Choose extensions wisely  Deactivate unused extensions, upgrade used  Simplify your templates as much as possible
  6. 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. 7. APPLICATION LEVEL OPTIMIZATIONS
  8. 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. 9. Enable Joomla! Cache  Enable the “System – Cache” plugin
  10. 10. Recommended Cache Settings Site Global Configuration System Cache Settings
  11. 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. 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. 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. 14. Sounds Nice, How Do I Begin?  Use smush.it  Photoshop/Fireworks  Joomla! Extensions
  15. 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. 16. JCH Optimize  Enable the “System – JCH Optimize” plugin
  17. 17. JCH Optimize Settings
  18. 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. 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. 20. Some Results – Default Joomla! No Optimizatio ns Cache/ Compressi on .htacce ss 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%)
  21. 21. SERVER LEVEL OPTIMIZATIONS
  22. 22. Use CDN YOUR VISITORS LOCATION MATTERS!
  23. 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. 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. 25. Opcode/Object Caching  FastCGI + APC PHP extension  Memcached and PHP/MySQL  eAccelerator
  26. 26. Joomla Interaction with Your Database  First request goes to the database server
  27. 27. Object Caching  First request goes to the database server  Objects are also stored in Memcached
  28. 28. Object Caching  All consecutive requests are forwarded to the Memcached server
  29. 29. How PHP works  Scanning  Lexing  Parsing  Compilation  Opcode  Execution
  30. 30. PHP Opcode Caching  Opcode  Execution
  31. 31. Reverse Proxy Servers
  32. 32. Reverse Proxy Servers
  33. 33. Reverse Proxy Servers
  34. 34. Reverse Proxy Servers
  35. 35. Our Own Solution: The SUPERCACHER  Custom PHP/MySQL configuration  Memcached/PHP APC  Joomla! friendly reverse proxy setup
  36. 36. Final Results: Joomla + VirtueMart No Optimizatio ns Application Level Optimizations Server Level Optimization s 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%)
  37. 37. Some Key Takes  Speed optimization is a process – do it regularly  Always test!  Choose a well optimized host
  38. 38. QUESTION S TIME
  39. 39. We now have something special for Australia!    Free .com.au domain 24/7 Aussie toll free Payments in AUD
  40. 40. JoomlaDay Sydney Exclusive Offer Get It At: www.siteground.com/australia
  41. 41. THANK YOU! Tenko Nikolov tenko@siteground.com @tnikolov
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×