Speed Cache - Joomla Performance Optimization
Joomla has a native cache and Gzip compression system, that's a good start. Speed Cache comes over as a natural improvement of the Joomla page cache system with a lot of performance, compatibility and features enhancement.
To be more specific Speed Cache brings: a powerful static page caching, compatible with user sessions, a full browser cache system, a preloading cache system, a URL inclusion/exclusion cache control and a resource minification. Some handy tools are also part of the extension like the activation for logged in/logout users, an auto-index for caching URLs and an automatic cache cleaner on specified actions. Everything is under control from the Speed Cache dashboard.
Before / After optimization overview
Joomla cache and Gzip loading time: 2.3 seconds
VS Joomla cache and Gzip + Speed Cache optimization: 1.3 seconds
Page tested: a Joomla article page + 3 modules. Page size = 1.7MB, 670KB of images, other resources 1.030MB
Comparison Between Joomla Optimization and Speed Cache
JOOMLA INBUILT OPTIMIZATION | JOOMLA + SPEEDCAHE OPTIMIZATION | |
---|---|---|
Joomla cacheJoomla cache system from the global configuration | Joomla cache system from the global configuration | Joomla cache system can be used (recommended) along with all SpeedCache optimizations |
Gzip compressionJoomla default Gzip compression | Joomla default Gzip compression | Joomla default Gzip compression should be used (recommended) along with all SpeedCache optimizations |
Advanced static HTML cacheGenerate a more static content for all users (loggedin and guests) served from cache | Only Joomla default cache elements | Generate a more static content for all users (loggedin and guests) served from cache |
Browser cache cleanableAdd a browser cache system with the possibility to give instructions to clear it | Joomla default: Does not use browser caching | Add a browser cache system with the possibility to give instructions to clear it |
Cache for guests and loggedin usersAs an option active all cache cache for guest, logged in users or both, by page | By default in Joomla you can't use cache for loggedin users | As an option active all cache cache for guest, logged in users or both, by page |
Image CompressionSpeedCache includes an image compression quota: get 1GB or 3GB using ImageRecycle dedicated service. u200bAvailable for all your websites! | No image compression in Joomla by default | SpeedCache includes an image compression quota: get 1GB or 3GB using ImageRecycle dedicated service. u200bAvailable for all your websites! |
Files Group and MinifyMinify all files to reduce their size and group them in a single to serve them faster | No resources minification or group in Joomla by default | SpeedCache includes a minification process per file and offers a group possibility for JS/CSS and font files |
Image Lazy LoadingLazy Load delays loading of images in long web pages. Images outside of viewport will not be loaded before user scrolls to them. | No lazy loading included in Joomla | Lazy Load delays loading of images in long web pages. Images outside of viewport will not be loaded before user scrolls to them. |
CDNSpeedCache includes a CDN configuration that is compaticle with all the major providers like Amazon, Cloudflare, KeyCDN... | No CDN included by default in Joomla configuration | SpeedCache includes a CDN configuration that is compaticle with all the major providers like Amazon, Cloudflare, KeyCDN... |
Preload cache after cleanGenerate automatically of new cached version of your pages after cleaning the cache | No cache proloading in Joomla by default | Generate automatically of new cached version of your pages after cleaning the cache |
All cache system autocleanOn click or when waving a content: Clean Joomla cache, speed cache static cache and update version for browser cache | No autoclean system available in Joomla by default | On click or when waving a content: Clean Joomla cache, speed cache static cache and update version for browser cache |
Add and setup Expire headersCheck and setup the Expire Headers for png,jpg,gif,css,js files | No expire headers handling | Check and setup the Expire Headers for png,jpg,gif,css,js files |
Include - Exclude URLs from cachePossibility to include or exclude your pages from cache one by one | No specific URL rule, only global cache | Possibility to include or exclude your pages from cache one by one |
Cached URLs by Inclusion/Exclusion rulesUse rules to Include/Exclude a set of URLs from cache like www.url.com/forum/* (including Regex) | Use rules to Include/Exclude a set of URLs from cache like www.url.com/forum/* (including Regex) | Use rules to Include/Exclude a set of URLs from cache like www.url.com/forum/* (including Regex) |
Auto add URL to cache from new menuAutomatically add new menus to Speed Cache system (as an option) | Automatically add new menus to Speed Cache system (as an option) | Automatically add new menus to Speed Cache system (as an option) |
Powerful Cache System and Browser Caching
Speed Cache for Joomla is coming over the Joomla default cache system with a new cache layer, by sending more static content (HTML) therefore reducing the number of database queries. Plus, you have the possibility to store the major part of the heavy page resources (like images) in the browser cache. And you can clean it when you want!
Speed & Cache Where you Want
The Speed Cache cache is activated on a selection of pages of your website, the system is very flexible and you're always sure that it works on every website. You can also do a batch import of URL from a menu to the cache system. The cache inclusion/exclusion system is very powerful:
- Include single URLs
- Exclude single URLs
- Include from cache a set of URLs based on rules (regular expressions included)
- Exclude from cache a set of URLs based on rules (regular expressions included)
- Per URL define: Activate cache for public and/or for registered users
- Per URL define: Preload cache URLs for public and/or registered users
- Per URL activate the cache preloading per user
Dynamic Elements in Cache
The main problem with serving static content, like the Joomla Page cache plugin, is that it does not work at all with dynamic elements and user sessions. Speed cache got 2 systems to avoid the problem of cache on dynamic content:
- Speed Cache generates static cache file per Joomla user then it also works for dynamic content (like form, sessions..)
- Not sure about it? no problem, there's an option for each page URL to include/exclude logged in users from the cache
- You can also preload cache per user right after a clean cache
Image Compression and Lazy Loading
Images represent an average of 60% of the page weight so it's a high priority in the optimization process. Speed Cache includes an image compression tool and a lazy loading option:
- Image Compression: Apply an invisible image compression and reduce image size by up to 80% (by ImageRecycle)
- Lazy loading: Load only images when it’s visible in the by user (on scroll)
- Inclusion and Exclusion by URL rules
Mobile Cache and Per Device
Speed Cache can handle the cache for mobile automatically or you can generate a dedicated cache version per device. The result is that you'll be sure that Speed Cache will run smoothly with any template framework. Mobile cache features:
- Automatically serve same cache for all devices
- Dedicated cache for tablet
- Dedicated cache for tablet
- Option to disable cache for a specified device
Clean all Cache and Regenerate it
Speed cache can get rid of the cache cleaning problem, all caches (Joomla, Speed Cache static and browser cache) can be cleaned in one click or automatically based on action. Indeed, on backend/frontend actions like save a content, all cache can be cleaned. You can also regenerate automatically all caches, so no one will wait for the cache generation anymore.
A Dashboard to Rule all the Performance
A dashboard is available to help you to check all major performance issues you have and fix it in one click, pretty handy to optimize performance in no time.
- Check for Joomla cache activation and duration
- Check for Gzip compression
- Expire Headers presence and duration
- Speed cache URL Autoindex activation
- PHP version
- Browser cache activation
- Auto Clear cache activation
- Check for CDN activation
- Check for file minification
- Check for resource group
Group files in a single one for a faster loading
Group all your JS, CSS and fonts files in a single click. The group file feature includes
- Group all JS files
- Group all CSS files
- Group Fonts
Resources Minification
Speed cache got a tool to do minification of your website resources and it includes a powerful tool to avoid conflicts while keeping the maximum of performance. Indeed, you can scan for files loaded on frontend, JS, CSS and fonts, then activate the minification per file!
Use a Content Delivery Network (aka CDN)
The use of CDN (Content Delivery Network) has been proven to be efficient especially if you have an international audience. It helps serving website media from a local source all over the world. A CDN integration is available with all the major CDN on the market like Cloudflare, Amazon Cloudfront, MaxCDN, KeyCDN and others.
Configuration Import/Export
Website optimization takes time and importing a file to get back all your extension configuration is faster. From the configuration, you can Import or Export a json file.
Module AJAX Refresh
Speed Cache adds an option per module to load it through AJAX (async loading) and to automatically refresh it without cache. It will avoid all cache persistence on specific Joomla module
Still Not Sure? Use our Chrome Extension
If the cache has been served using SpeedCache extension got a green symbol on your below your chrome extension logo, if not it's grey, as simple as that! JoomUnited chrome extension cache checker displays also general information (apply to all websites).
- Total page loading time
- Varnish server cache
- When the Varnish cache have been generated (current or previous request)
- Details of the loading time by element: Waiting for browser reply, Redirect (if any), DNS resolution, Connect to server
- Details of the loading time by element: Content sending, Receive, Unload time, Dom time, Load time