SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
Crossing the line
 first ... or last?
Optimising Joomla! Content Management
               System

           Ruth Cheesley
What we will cover

● What is 'optimising' and why bother

● Establishing a benchmark

● Getting started with Joomla! optimisation

● Caching with Joomla!

● Useful extensions
What is optimisation?
What is optimising?



                   Optimising is the the
                  process through which
                   we make something
                    more effective, or
                  more efficient - getting
                     the most out of it
What do we mean by optimising?

● Identifying 'bottlenecks'
  which cause a site to
  load slower

● Cross-browser, cross-
  platform, cross-device

● Make your website faster
  for visitors
Why bother with optimisation?
Why should I bother with optimising?
● When pages load slowly, business metrics
  drop - including
          ■ Conversions
          ■ Bounce rate
          ■ Page views per visit

● This drop is more significant now than two
  years ago - users are less willing to suffer
  a slow loading website


Courtesy of Web Performance Today
Selling the benefits

               ● Better for visitors

               ● More sales or conversions

               ● Better reputation

               ● Less complaints

               ● ? Search Engines
Show me an example!
An example - Walmart - Overall Site


                                     Customers who
                                        purchased
                                      viewed pages
                                      which loaded
                                    twice as fast as
                                     non-purchasing
                                        customers


Courtesy of Web Performance Today
An example - Walmart - Single Page


                                     This correlation is
                                      true even at the
                                       individual page
                                    level, as well as at
                                        an overall site
                                             level



Courtesy of Web Performance Today
An example - Walmart - Categories

                                     At department
                                     level (category
                                     pages) buyers
                                       were served
                                      pages quicker
                                    than non-buyers



Courtesy of Web Performance Today
An example - Walmart - Bounce rate



                         Bounce rate
                            strongly
                      correlates to page
                          load speed
What about my website?
How does this apply to my website?

● Customers may not
  use your site if it is
  slow = less revenue

● Small changes can
  yield significant
  performance returns

● Joomla! can be
  optimised!
Establishing a benchmark
Establishing a benchmark

              ● Identify benchmarks to
                test against &
                demonstrate improvement

              ● Lots of free tools available
                with professional reports
                produced

              ● Demonstrate business
                case and return on
                investment
Optimising Joomla! - Getting started

1. BACK UP!

2. Benchmark

3. Spring clean

4. Identify potential issues

5. Get up to date

6. Re-test after each change
Getting started - Spring Clean


                                               ● Remove any
                                                 extensions you are
                                                 not using

                                               ● Disable any plugins
                                                 and modules not in
                                                 use

Remember to clear the cache and retest after each change you make - and document any changes
Getting started - Identify issues


 ● New problems -
   suspect recently
   installed extensions

 ● Identify existing
   problems from
   benchmark scans

Remember to clear the cache and retest after each change you make - and document any changes
Get up to date



                                              ● Update Joomla! to
                                                latest stable release

                                              ● Update all extensions
                                                (including modules,
                                                plugins and templates)

Remember to clear the cache and retest after each change you make - and document any changes
Caching with Joomla!
What is caching?
        "To store away for future use"

   In web technologies, caching is used to:

  "Store web objects [such as pages, images,
and other files] closer to the user to allow faster
 access, thus improving the user experience of
                    the visitor"
Why cache a Joomla! site?


● Reduces load time

● Reduce server load

● Faster website
Types of caching with Joomla!



1. Page caching

2. System caching

3. Module caching
Page caching
Page caching
● Takes a copy of   Use browser caching
  each page as             option
  displayed
                     Joomla! sends a 304
● Enabled via        'not modified' header
  Plugins->System   to browser if page has
                          been cached
Why use page caching?

● If visitors regularly visit the same page
  several times it can make the site a little
  more responsive

● It can cause big problems if you have pages
  with dynamic content, as the old content will
  be served for the period of the cache.
'Global' caching
'Global' caching
● Takes a copy of each ● Has two options
  page as displayed      ○ Conservative
                         ○ Progressive
● Config>System
  >Cache settings
More about global caching

Unique cache       Conservative cache shows all visitors to your site the same exact cached content.
per visitor
                   Progressive caching however caches the content for each user uniquely.
Toggling module If you want to toggle caching on/off with individual modules, set the global cache type to
caching         Conservative and then use the module's cache type to enable / disable caching.

                   Progressive caching overrides a specific modules cache settings.

Logged in users Regardless of conservative vs. progressive caching, logged in users do not see cached
and cache       module content.


Module cached Each module that is cached can have a different cached version for each page.
is based upon
the current page For example, if you had a "related questions" module, a cached version of this will work (it
                 would show a cached version of related articles for each different article).


Courtesy of InMotion Hosting
Clearing and purging cache

● Clear cache will delete ALL cached files

● Purge expired cache will delete all cache
  files which are older than the specified cache
  time - e.g. if the cache time is 30 minutes it
  will delete all cache files older than 30
  minutes

● Purging expired cache is more resource
  intensive, as Joomla! has to identify which
  files to delete
Things to bear in mind
● Progressive caching can result in VERY
  large cache folders

● Progressive caching on LARGE websites
  may cause problems unless you have a well-
  resourced dedicated server

● Purging expired cache should be done
  regularly, but at a low-traffic time due to the
  resource usage
Other tips
Other performance tips
● GZip compression (Config>Server>GZip
  compression) may help reduce load time
  BUT there is a concurrent increase in server
  load.

● GZip compression compresses any text files
  (php, html, css, js etc), delivers to the
  browser, which then decompresses

● GZip when not necessary and supported by
  a well-resourced server can slow a site
Image size & format
● Images should be in PNG, and resized to the
  appropriate dimensions

● Do not resize in HTML - it requires the browser
  to download the whole image then resize

● Optimise your images for the web

● If copyrighted to you, ensure you embed
  sufficient identifying features in case of misuse
Useful extensions
Extensions of note - caching
JotCache - Int       Cache cleaner - Beg

● Close control of   ● One-click cache
  caching by page      clean for admin

● Page exclusion     ● Pro version
                       includes cron job
● Exclude mobile       for automated
  users                clearing
Extensions of note - CSS/JS
JBetolo - Expert      JCH Optimise - Int
Merge, compress &     Merge, compress &
minify CSS/JS         minify CSS/JS

Correct HTTP header   Background image
                      sprites
CDN-Friendly          Supports @import

htaccess static       Option to exclude files
content rules
Will you be first across the line?
Thank you!

Ruth Cheesley

@RCheesley

Weitere ähnliche Inhalte

Ähnlich wie Optimising JCMS - Boost Speed & Performance

Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Jess Coburn
 
Boosting your conversion rate through web performance improvements
Boosting your conversion rate through web performance improvementsBoosting your conversion rate through web performance improvements
Boosting your conversion rate through web performance improvementsAlyss Noland
 
Drupal 7 performance and optimization
Drupal 7 performance and optimizationDrupal 7 performance and optimization
Drupal 7 performance and optimizationShafqat Hussain
 
Optimizing WordPress Performance
Optimizing WordPress PerformanceOptimizing WordPress Performance
Optimizing WordPress PerformanceDouglas Yuen
 
PyGrunn2013 High Performance Web Applications with TurboGears
PyGrunn2013  High Performance Web Applications with TurboGearsPyGrunn2013  High Performance Web Applications with TurboGears
PyGrunn2013 High Performance Web Applications with TurboGearsAlessandro Molina
 
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin ThomasCtrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin ThomasResellerClub
 
Google app development
Google app developmentGoogle app development
Google app developmentAurel Medvegy
 
Google app developers
Google app developersGoogle app developers
Google app developersAurel Medvegy
 
Web software development
Web software developmentWeb software development
Web software developmentAurel Medvegy
 
Google app developer
Google app developerGoogle app developer
Google app developerAurel Medvegy
 
Google apps development
Google apps developmentGoogle apps development
Google apps developmentAurel Medvegy
 
Cloud service provider
Cloud service providerCloud service provider
Cloud service providerAurel Medvegy
 
Google app engine developer
Google app engine developerGoogle app engine developer
Google app engine developerAurel Medvegy
 

Ähnlich wie Optimising JCMS - Boost Speed & Performance (20)

Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11
 
Boosting your conversion rate through web performance improvements
Boosting your conversion rate through web performance improvementsBoosting your conversion rate through web performance improvements
Boosting your conversion rate through web performance improvements
 
Drupal 7 performance and optimization
Drupal 7 performance and optimizationDrupal 7 performance and optimization
Drupal 7 performance and optimization
 
Optimizing WordPress Performance
Optimizing WordPress PerformanceOptimizing WordPress Performance
Optimizing WordPress Performance
 
PyGrunn2013 High Performance Web Applications with TurboGears
PyGrunn2013  High Performance Web Applications with TurboGearsPyGrunn2013  High Performance Web Applications with TurboGears
PyGrunn2013 High Performance Web Applications with TurboGears
 
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin ThomasCtrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
 
Appengine json
Appengine jsonAppengine json
Appengine json
 
Google app development
Google app developmentGoogle app development
Google app development
 
Google app developers
Google app developersGoogle app developers
Google app developers
 
Google development
Google developmentGoogle development
Google development
 
Google app
Google appGoogle app
Google app
 
Web software development
Web software developmentWeb software development
Web software development
 
Google app developer
Google app developerGoogle app developer
Google app developer
 
Google web tools
Google web toolsGoogle web tools
Google web tools
 
Google apps development
Google apps developmentGoogle apps development
Google apps development
 
Google app pricing
Google app pricingGoogle app pricing
Google app pricing
 
Cloud service provider
Cloud service providerCloud service provider
Cloud service provider
 
Google apps
Google appsGoogle apps
Google apps
 
App engine domain
App engine domainApp engine domain
App engine domain
 
Google app engine developer
Google app engine developerGoogle app engine developer
Google app engine developer
 

Mehr von Ruth Cheesley

Open source meets marketing - Presentation - OpenFest 2019
Open source meets marketing - Presentation - OpenFest 2019Open source meets marketing - Presentation - OpenFest 2019
Open source meets marketing - Presentation - OpenFest 2019Ruth Cheesley
 
Data first web development
Data first web developmentData first web development
Data first web developmentRuth Cheesley
 
Integrated Marketing Strategies with Mautic
Integrated Marketing Strategies with MauticIntegrated Marketing Strategies with Mautic
Integrated Marketing Strategies with MauticRuth Cheesley
 
Automating your marketing workflows in Joomla with Mautic
Automating your marketing workflows in Joomla with MauticAutomating your marketing workflows in Joomla with Mautic
Automating your marketing workflows in Joomla with MauticRuth Cheesley
 
Fight for the Pixel - Innovation Martlesham - Ruth Cheesley
Fight for the Pixel - Innovation Martlesham - Ruth CheesleyFight for the Pixel - Innovation Martlesham - Ruth Cheesley
Fight for the Pixel - Innovation Martlesham - Ruth CheesleyRuth Cheesley
 
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco DingsCustom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco DingsRuth Cheesley
 
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...Ruth Cheesley
 
Chalk and cheese - how developers and designers can work together and not cru...
Chalk and cheese - how developers and designers can work together and not cru...Chalk and cheese - how developers and designers can work together and not cru...
Chalk and cheese - how developers and designers can work together and not cru...Ruth Cheesley
 
Discovering Joomla! - Find out about Joomla's features
Discovering Joomla! - Find out about Joomla's featuresDiscovering Joomla! - Find out about Joomla's features
Discovering Joomla! - Find out about Joomla's featuresRuth Cheesley
 
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...Ruth Cheesley
 
Conflict as an opportunity for growth in Open Source communities - European C...
Conflict as an opportunity for growth in Open Source communities - European C...Conflict as an opportunity for growth in Open Source communities - European C...
Conflict as an opportunity for growth in Open Source communities - European C...Ruth Cheesley
 
The world needs Open Source - Ruth Cheesley - NorDevCon 2014
The world needs Open Source - Ruth Cheesley - NorDevCon 2014The world needs Open Source - Ruth Cheesley - NorDevCon 2014
The world needs Open Source - Ruth Cheesley - NorDevCon 2014Ruth Cheesley
 
A gaze into the crystal ball of Google - social, local and predictive search
A gaze into the crystal ball of Google - social, local and predictive searchA gaze into the crystal ball of Google - social, local and predictive search
A gaze into the crystal ball of Google - social, local and predictive searchRuth Cheesley
 
CMS Security - Ruth Cheesley - CMS Africa 2014
CMS Security - Ruth Cheesley - CMS Africa 2014CMS Security - Ruth Cheesley - CMS Africa 2014
CMS Security - Ruth Cheesley - CMS Africa 2014Ruth Cheesley
 
Women in Open Source - Ruth Cheesley - CMS Africa 2014
Women in Open Source - Ruth Cheesley - CMS Africa 2014Women in Open Source - Ruth Cheesley - CMS Africa 2014
Women in Open Source - Ruth Cheesley - CMS Africa 2014Ruth Cheesley
 
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...Ruth Cheesley
 
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?Ruth Cheesley
 
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...Ruth Cheesley
 
Ruth Cheesley - Joomla!Day UK - Joomla in your area
Ruth Cheesley - Joomla!Day UK - Joomla in your areaRuth Cheesley - Joomla!Day UK - Joomla in your area
Ruth Cheesley - Joomla!Day UK - Joomla in your areaRuth Cheesley
 
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!Ruth Cheesley
 

Mehr von Ruth Cheesley (20)

Open source meets marketing - Presentation - OpenFest 2019
Open source meets marketing - Presentation - OpenFest 2019Open source meets marketing - Presentation - OpenFest 2019
Open source meets marketing - Presentation - OpenFest 2019
 
Data first web development
Data first web developmentData first web development
Data first web development
 
Integrated Marketing Strategies with Mautic
Integrated Marketing Strategies with MauticIntegrated Marketing Strategies with Mautic
Integrated Marketing Strategies with Mautic
 
Automating your marketing workflows in Joomla with Mautic
Automating your marketing workflows in Joomla with MauticAutomating your marketing workflows in Joomla with Mautic
Automating your marketing workflows in Joomla with Mautic
 
Fight for the Pixel - Innovation Martlesham - Ruth Cheesley
Fight for the Pixel - Innovation Martlesham - Ruth CheesleyFight for the Pixel - Innovation Martlesham - Ruth Cheesley
Fight for the Pixel - Innovation Martlesham - Ruth Cheesley
 
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco DingsCustom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
Custom Fields in Joomla - JoomlaDay UK 2016 - Marco Dings
 
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
Time to stop breaking your promises - dealing with 404's, broken URLs and pla...
 
Chalk and cheese - how developers and designers can work together and not cru...
Chalk and cheese - how developers and designers can work together and not cru...Chalk and cheese - how developers and designers can work together and not cru...
Chalk and cheese - how developers and designers can work together and not cru...
 
Discovering Joomla! - Find out about Joomla's features
Discovering Joomla! - Find out about Joomla's featuresDiscovering Joomla! - Find out about Joomla's features
Discovering Joomla! - Find out about Joomla's features
 
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
Ruth Cheesley - Joomla World Conference 2014 - How to prove you're worth a mi...
 
Conflict as an opportunity for growth in Open Source communities - European C...
Conflict as an opportunity for growth in Open Source communities - European C...Conflict as an opportunity for growth in Open Source communities - European C...
Conflict as an opportunity for growth in Open Source communities - European C...
 
The world needs Open Source - Ruth Cheesley - NorDevCon 2014
The world needs Open Source - Ruth Cheesley - NorDevCon 2014The world needs Open Source - Ruth Cheesley - NorDevCon 2014
The world needs Open Source - Ruth Cheesley - NorDevCon 2014
 
A gaze into the crystal ball of Google - social, local and predictive search
A gaze into the crystal ball of Google - social, local and predictive searchA gaze into the crystal ball of Google - social, local and predictive search
A gaze into the crystal ball of Google - social, local and predictive search
 
CMS Security - Ruth Cheesley - CMS Africa 2014
CMS Security - Ruth Cheesley - CMS Africa 2014CMS Security - Ruth Cheesley - CMS Africa 2014
CMS Security - Ruth Cheesley - CMS Africa 2014
 
Women in Open Source - Ruth Cheesley - CMS Africa 2014
Women in Open Source - Ruth Cheesley - CMS Africa 2014Women in Open Source - Ruth Cheesley - CMS Africa 2014
Women in Open Source - Ruth Cheesley - CMS Africa 2014
 
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
Ruth Cheesley - Joomla! World Conference 2013 - What are you trying to say (a...
 
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
Ruth Cheesley - Joomla! World Conference 2013 - Is your business intelligent?
 
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
Suffolk Internet Marketing & SEO/M Specialists - Ruth Cheesley - Don't get in...
 
Ruth Cheesley - Joomla!Day UK - Joomla in your area
Ruth Cheesley - Joomla!Day UK - Joomla in your areaRuth Cheesley - Joomla!Day UK - Joomla in your area
Ruth Cheesley - Joomla!Day UK - Joomla in your area
 
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
Ruth Cheesley - Joomla!Day UK - Articles are boring, long live the CCK!
 

Kürzlich hochgeladen

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Kürzlich hochgeladen (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Optimising JCMS - Boost Speed & Performance

  • 1. Crossing the line first ... or last? Optimising Joomla! Content Management System Ruth Cheesley
  • 2. What we will cover ● What is 'optimising' and why bother ● Establishing a benchmark ● Getting started with Joomla! optimisation ● Caching with Joomla! ● Useful extensions
  • 4. What is optimising? Optimising is the the process through which we make something more effective, or more efficient - getting the most out of it
  • 5. What do we mean by optimising? ● Identifying 'bottlenecks' which cause a site to load slower ● Cross-browser, cross- platform, cross-device ● Make your website faster for visitors
  • 6. Why bother with optimisation?
  • 7. Why should I bother with optimising? ● When pages load slowly, business metrics drop - including ■ Conversions ■ Bounce rate ■ Page views per visit ● This drop is more significant now than two years ago - users are less willing to suffer a slow loading website Courtesy of Web Performance Today
  • 8. Selling the benefits ● Better for visitors ● More sales or conversions ● Better reputation ● Less complaints ● ? Search Engines
  • 9. Show me an example!
  • 10. An example - Walmart - Overall Site Customers who purchased viewed pages which loaded twice as fast as non-purchasing customers Courtesy of Web Performance Today
  • 11.
  • 12. An example - Walmart - Single Page This correlation is true even at the individual page level, as well as at an overall site level Courtesy of Web Performance Today
  • 13.
  • 14. An example - Walmart - Categories At department level (category pages) buyers were served pages quicker than non-buyers Courtesy of Web Performance Today
  • 15.
  • 16. An example - Walmart - Bounce rate Bounce rate strongly correlates to page load speed
  • 17.
  • 18. What about my website?
  • 19. How does this apply to my website? ● Customers may not use your site if it is slow = less revenue ● Small changes can yield significant performance returns ● Joomla! can be optimised!
  • 21. Establishing a benchmark ● Identify benchmarks to test against & demonstrate improvement ● Lots of free tools available with professional reports produced ● Demonstrate business case and return on investment
  • 22. Optimising Joomla! - Getting started 1. BACK UP! 2. Benchmark 3. Spring clean 4. Identify potential issues 5. Get up to date 6. Re-test after each change
  • 23. Getting started - Spring Clean ● Remove any extensions you are not using ● Disable any plugins and modules not in use Remember to clear the cache and retest after each change you make - and document any changes
  • 24. Getting started - Identify issues ● New problems - suspect recently installed extensions ● Identify existing problems from benchmark scans Remember to clear the cache and retest after each change you make - and document any changes
  • 25. Get up to date ● Update Joomla! to latest stable release ● Update all extensions (including modules, plugins and templates) Remember to clear the cache and retest after each change you make - and document any changes
  • 27. What is caching? "To store away for future use" In web technologies, caching is used to: "Store web objects [such as pages, images, and other files] closer to the user to allow faster access, thus improving the user experience of the visitor"
  • 28. Why cache a Joomla! site? ● Reduces load time ● Reduce server load ● Faster website
  • 29. Types of caching with Joomla! 1. Page caching 2. System caching 3. Module caching
  • 31. Page caching ● Takes a copy of Use browser caching each page as option displayed Joomla! sends a 304 ● Enabled via 'not modified' header Plugins->System to browser if page has been cached
  • 32. Why use page caching? ● If visitors regularly visit the same page several times it can make the site a little more responsive ● It can cause big problems if you have pages with dynamic content, as the old content will be served for the period of the cache.
  • 34. 'Global' caching ● Takes a copy of each ● Has two options page as displayed ○ Conservative ○ Progressive ● Config>System >Cache settings
  • 35. More about global caching Unique cache Conservative cache shows all visitors to your site the same exact cached content. per visitor Progressive caching however caches the content for each user uniquely. Toggling module If you want to toggle caching on/off with individual modules, set the global cache type to caching Conservative and then use the module's cache type to enable / disable caching. Progressive caching overrides a specific modules cache settings. Logged in users Regardless of conservative vs. progressive caching, logged in users do not see cached and cache module content. Module cached Each module that is cached can have a different cached version for each page. is based upon the current page For example, if you had a "related questions" module, a cached version of this will work (it would show a cached version of related articles for each different article). Courtesy of InMotion Hosting
  • 36. Clearing and purging cache ● Clear cache will delete ALL cached files ● Purge expired cache will delete all cache files which are older than the specified cache time - e.g. if the cache time is 30 minutes it will delete all cache files older than 30 minutes ● Purging expired cache is more resource intensive, as Joomla! has to identify which files to delete
  • 37. Things to bear in mind ● Progressive caching can result in VERY large cache folders ● Progressive caching on LARGE websites may cause problems unless you have a well- resourced dedicated server ● Purging expired cache should be done regularly, but at a low-traffic time due to the resource usage
  • 39. Other performance tips ● GZip compression (Config>Server>GZip compression) may help reduce load time BUT there is a concurrent increase in server load. ● GZip compression compresses any text files (php, html, css, js etc), delivers to the browser, which then decompresses ● GZip when not necessary and supported by a well-resourced server can slow a site
  • 40. Image size & format ● Images should be in PNG, and resized to the appropriate dimensions ● Do not resize in HTML - it requires the browser to download the whole image then resize ● Optimise your images for the web ● If copyrighted to you, ensure you embed sufficient identifying features in case of misuse
  • 42. Extensions of note - caching JotCache - Int Cache cleaner - Beg ● Close control of ● One-click cache caching by page clean for admin ● Page exclusion ● Pro version includes cron job ● Exclude mobile for automated users clearing
  • 43. Extensions of note - CSS/JS JBetolo - Expert JCH Optimise - Int Merge, compress & Merge, compress & minify CSS/JS minify CSS/JS Correct HTTP header Background image sprites CDN-Friendly Supports @import htaccess static Option to exclude files content rules
  • 44. Will you be first across the line?