Back in September, I wrote a quick Blog post about some optimization plans for the next (minor) version of FMJ-TagCloud.
However, the endeavor to optimize things as much as I wanted to, resulted in a much bigger update.
With that bigger update, I decided to also introduce some more functionality and thus the next minor version, became a major version.
As I am playing with the thought of introducing a cutdown free version of this module at some point, I took the opportunity and also renamed the module from "FMJ-TagCloud" to "FMJ Tag Cloud PRO"
So, without further ado, here are the details of the major upgrade, culminating to FMJ Tag Cloud PRO 2.0.0. (Download)
Tag-Data transfer with AJAX:
Until now, the tag data (the actual tags, their links and weight) were included in the page's content and sent to the user.
Depending on the tag source and generator setting and combined with the module's and Joomla's caching settings, this could cause excessive caching. Or if caching is disabled, more load on the server.
With the module's support of AJAX we can now separate the structure of the module (the container, styling and inclusion of necessary js and css) from the actual data.
This alone gives us some room to optimize the process, namely:
- the "structure" can now be cached "indefinitely", that is with a high cache time (weeks, months, ...) resulting in less effort by the server to constantly run through the entire process.
- the AJAX tag-sources can be cached per page or per menu item on the server-side for as long as necessary. This also results in not having to collect all the data and generate the final feed for the cloud.
- the AJAX response can be cached on the client, for a defined period of time. This will further reduce load on the server, as the client will serve the tag data from cache, if it has not yet expired, resulting in one less call to the server.