INFORMATION: NAME: JRE Cache VERSION: 3.0 TYPE: Joomla Component SUPPLIER: TKT NULLIFIER: TKT PACKER: TKT TESTED: TKT RELEASE: March 17th, 2008 LANGUAGE: PHP/MySQL PREVIOUS PROTECTION: NONE PRESENT PROTECTION: NONE WEBSITE: http://www.joomlatwork.com AUTHUR: JoomlaAtWork LICENSE: Commercial PRICE: ˆ39.00 + TAX = ˆ46 DEMO: NONE ADDONS: NONE REQUIREMENTS: * Joomla 1.0.x, Joomla 1.5.x & Mambo 4.6.x * PHP 4.1 or Greater * MySQL 4.1.10 or Greater PACKAGE CONTAIN: * com_jrecache_3.0_J15.zip (for Joomla 1.5.x) * com_jrecache_3.0_J10.zip (for Joomla 1.0.x) * com_jrecache_3.0_mambo.zip (for Mambo 4.6.x) DESCRIPTIONS: Increase the performance of your website with the accelerate component 3.0 (!) The Joomlatwork cache component is now also available for Mambo 4.6x, Joomla 1.0x series and the Joomla 1.5(!). We are proud to release the new 3.0 release of the cache component. The cache component is now also available for Joomla 1.5 and Mambo 4.6.x. The 3.0 release is build from scratch again based on an own code base and libraries and is available for Mambo and Joomla websites Version 1.0b of the cache component is still available for Joomla 1.0x serie only or higher. Standard out of the box Joomla and Mambo websites generates dynamicly webpages on the user request. This means that for each request the specific page must be composed by excecuting PHP code and SQL queries. On normal "hosting" environment the generation of a Joomla pages can take up to 0,4 - 1,4 seconds depending on the hosting environment and the number of components used. For large volume visitor sites this can result into slow performance of the website. When enabled this component can "generates" pages within 0,02 - 0,001 seconds (depending on your hosting environment). If you want to boost your performance of your Joomla / Mambo website this component can help you. Before buying the component read the next coming paragraphs: The component actual creates an cache environment around Joomla and Mambo. Please notice that this is a different caching mechanism that is default available within Joomla and Mambo: The default caching engine still needs to execute a lot of PHP code and SQL code and is therefore slow or will not function correctly. How is this performance component working? The basics of the caching engine is simple. When a page is requested by a user the cache components first checks if the specific page request is within the cache repository. If the page is present within the repository it checks if the cache is still valid, based on the time to live configuration parameter. If the page within the cache is vallid it is retrieved from the cache repository and sent to the user. If the page is not present within the cache or if its no longer valid Joomla will generate the page. At the end of the page generation process the output of the request is written to the cache repository (if it's allowed by the filters which can be set within the cache configuration). Please notice that this cache component is working with other core and third party component as long as these components doesn't alter the index.php file. The caching mechanism will not work if a user logs in to your website. The cache is then disabled for the specific user until the user environment. If a users logs into the Joomla environment (frontend) the cache for the specific user is disabled until the users logs out. Actual you can configure the cache engine so that based on specific actions the cache can be disabled and you can enable the cache again also based on specific actions. For example the default config is when a user logs in (= POST action) the cache is disabled for the user until the user logs out (also an action) The cache component functions almost like a static HTML page, although some php code must be executed to check and validate the cache. If a page is within the cache and is valid no SQL queries or an SQL connection is made. This means that your pages will shows even if your SQL database is not available (until the cache validation time is expired). This can save you a heavily load on your SQL backend environment for Joomla / Mambo Before we have launched this component we have tested this component throughly within several websites. For example the component is now running on the KiKa website (http://www.kika.nl) and has drammaticly increased the performance of the website. With sometimes more then 3.000 visitors a day bad performance is no longer an issue. Standard page generation time was arround 0,5 - 5 seconds before the cache component was implemented and after the implementation the generation time is arround 0,02 - 0,004 seconds. What are the "site" effects of the component? When you apply the component at your website make sure that you are aware of the following: If you are using 'dynamicly changing content parts' that change on each page request this will not work when you apply the cache component. For example when you display the date and time, the number of visitors online or dynamicly rotating banners will not displayed with the correct values. The reason for this is that the page is retrieved from the cache repository which represents the state when it was generate and stored within the cache repository. If the page is retrieved from the cache be aware that no interaction with the databases is made. If you have performance issues the only solution is to remove these dynamic displays or keep the time to live (= how long a cache page is valid) as low as possible. Also with the use of so called Ajax modules and components the content can be updated as will and the page will be retrieved from the cache. Compatibility with SEF Patch extended version: The accelerate component is fully compatibel with the SEF Patch extended version. To make both components work first install the SEF Patch extended version and secondly the accelerate component. Compatibility with templates and components using cookies: The cache component also support cookies within the URL cache repository unique key. For example Joomlafish is using a cookie to set the language for display at the end user. In this case the URL is the same but the difference in display is made by the cookie. In this case the cookie can be included with the URL to generate a cache page specific for the value of the cookie in combination with the URL. Also templates make use of cookies, for example the RocketTheme templates are using cookies for the display settings (larger fonts, etc...). If you have questions about these cookies please check or ask it in our forum. Configuration settings: Take a look here: http://www.joomlatwork.com/products/components/joomla_mambo_cache_booster.html Cleaning up the cache repository: You can clean up the cache repository through the administration panel->Clean up the Cache repository. When you select this option you can choose "to delete all files within the cache repository" and "delete the outdated and invallid cache files" within the cache repository. With the first option all the files and the records within the SQL database are removed either the cache entry is vallid or not. The second option only deletes cache entries that are no longer vallid (e.q. purpose is to make diskspace available from cache files that are no longer used). From version 1.0b and later it's also possible to cleanup the cache when specific actions are performed. Within the configuration you can apply "rules" for the backend and for the frontend if specific actions are performed. For example for the backend: if a Joomla content item is saved, deleted or published the cache can be cleared automaticly so that the frontend is always up-to-date. When you apply this rule you can set the TTL of the cache to 0 since every updated in the backend (or frontend) will clear the cache automaticly (if the rule is defined in the cache config). Overview of the cache repository: Within this option you can get an overview of the records that are stored within the cache repository. Each file that is located within the cache repository is stored within a SQL table which enables you to manage specific pages within your cache repository. Within this view you can add a new "cache" entry and don't allow the specific URL to be cached. You can also edited an existing URL / cache entry and disables the caching for this spefic URL. You can also remove a specific URL from the cache repository if needed. Notice: disabled URL's are not removed when you clean up the cache repository within the administration pannel. Reinstall the index.php file: When the first installation was not succesfull you can reinstall the needed index.php with this option. This is ussualy the case if the index.php could not be replaced at the installation time of the component. Restore the original index.php file At installation time a backup of the orginal index.php file is made. With this option you can restore the "orginal" index.php when needed. Deinstallation of the component: When you deinstall the component the orginal files are restored. INSTALL NOTE: Installation of the component is simple. You can install the component through the Joomla installer, but make sure that the /index.php and the /administrator/index2.php files of your webserver has the permissions to be overwritten by the patch file (set the permission on 666) and make also sure that your root directory of your website (the location where the index.php is) and the root of the administrator directory is also writeable. In the installation process the orginal index.php file in your webserver root is copied to jindex.php and the administrator/index2.php is copied to administrator/jindex2.php then the cache component will install the cache index.php file and the administrator/index2.php file. These files will included the original index.php file and the administrator/index2.php file. If you get a permission error at installation time you can install the component simply by your self with a FTP program. Therefor perform the following steps: 1. rename your /index.php file into /jindex.php 2. copy the /administrator/components/com_jrecache/install_files/index.php to /index.php file 3. rename your /administrator/index2.php file /administrator/jindex2.php 4. copy the /administrator/components/com_jrecache/install_files/index2.php to /administrator/index2.php file After installation you will need to "enable" the cache through the configuration panel. When you enable the cache make sure that the 'default' settings are correct. For example the component uses the default location of your website configuration file, but if this is located on a different location due to security reasons correct the path in the configuration setting. Within the Administration panel you can administrate the behauviour of the cache repository.