User Tools

Site Tools


Sidebar

magento_2:full_page_cache_warmer

For more details see the Full Page Cache Warmer for Magento 2 extension page.

Guide for Full Page Cache Warmer for Magento 2

With Cache Warmer for Magento 2 you'll be able to timely warm page cache according to your custom schedule to ensure fast page load and improve customer shopping experience.

  • Use 5 algorithms to prioritize pages for cache warming
  • Warm-up pages separately for mobile theme
  • Exclude particular blocks from caching with Hole Punch
  • Auto-update your cache after any catalog change
  • Analyze cache warmer efficiency with detailed reports

General Settings

To configure general extension settings please go to StoresConfigurationFull Page Cache Warmer.

Enable the extension - Set the option to 'yes' to activate the Cache Warmer. The option has a 'Global' scope so it is not possible to run the warmer on a certain web store/store view.

Auto-update cache upon the product changes - Due to this option, URLs of updated pages will be automatically added to the warmer queue.

Auto-generate Queue after Cache Flush - Set to 'yes' to automatically generate warmer queue after cache flushing. That's a useful option, as the cache will be warmed up right away and there's no need to wait until this moment comes on schedule.

Enable Customers' Activity Log - Set 'Yes' to let such features as FPC Warmer Reports and “Queue Generation Source” use the data from the log.

Get not only technical but also financial reports on your Magento store activity.

Source and Priority

In the warmer settings tab you can configure warmer queue settings as well as specify a log size and exclude specific pages from cache warming.

It's possible to generate queues and warm cache via the command line. Use commands:

php bin/magento fpc:warmer:process

php bin/magento fpc:warmer:generate

Queue Generation Source Settings

Queue Generation Source - allows selecting any of 5 available generation sources:

  • Pages Type
  • Text File with the list of URLs
  • Sitemap XML
  • Sitemap XML and Text File together
  • Customers Activity analysis

1. Page types

Page Types - If you select 'Page Types' as a queue generation source, you can choose which pages should be warmed. Drag and drop pages to prioritize them for the warming depending on their importance.

2. Sitemap XML

Sitemap XML- The option requires a valid XML sitemap located in your Magento 2 root folder. Also, set the relative path to the Sitemap XML file on your server.

Automatically create XML sitemap with the XML Google® Sitemap extension with no efforts. Such XML sitemap will perfectly suite for creating the URL queue by Magento 2 Full Page Cache Warmer.

3. TXT file with one link per line

Text file with one link per line - You can use a custom text file with a list of links to be crawled (one link per line). Specify the file path on your server.

4. Sitemap XML and Text File together

Sitemap XML and Text File together - Both the sitemap and the text file will be used for creating the URL queue for FPC warming. Specify the Queue links file path and the Sitemap XML file path.

5. Customer Activity Source - Create a warming queue based on the most popular pages of your website. Pages are ranked according to the number of visits. The most popular pages URLs will be at the beginning of the queue and will be warmed first, the least – at the end.


Performance Settings

Enable Multi-Process Warming - Enable multi-process warming to include several URLs per one crawling request. Multi-process warming significantly boosts the warming process speed. But it generates the extra load to the server as well. We recommend running the test warming while monitoring the server load first.

Number of Parallel Processes - Adjust the number of parallel processes for multi-process warming.

Queue Generation Schedule - It's possible to schedule warming queue generation according to any specific needs. Use the cron expression to schedule queue generation jobs, e.g. 0 */12 * * to run cron every twelve hours. Read more about cron expressions here.

Queue Max Size - Set the maximum number of page URLs for the warming queue.

Single Batch Size - The module processes pages in batches. Specify the maximum number of pages that can be processed by cron within a single run.

Warmer Schedule -Schedule warmer jobs. For example, */5 * * * * to run cron every five minutes.

Delay between requests - Please make sure there is enough delay to keep the server load safe. The default value is: 300 (milliseconds)

Log Size - Set the maximum number of lines in the log grid.


Page Combinations

Choose page combinations for cache warming based on Customer groups, Currencies, Stores.

Each link from the queue will be checked with all possible settings combinations based on the selected Queue Source and with Default settings (when none of the chosen settings are taken for the request).

Take a look at the example below:

Let's say you’ve chosen the following settings:

«Customer Groups» = General

«Stores» = English, French

«Currency» = USD

There are 3 settings selected: one for a customer group, two for stores, one for currency. Besides, each of these

settings will not be specified for the request (e.g. set as Default).

Thus, here’s the number of combinations for two links:

2 links * 2 customer groups * 3 stores * 2 currencies = 24 request variants

As a result, each link will be checked in the following 12 combinations:

1. Default + Default + Default : the page is requested with no parameters whatsoever.

2. General + English + USD : switched to General group + English is on + currency changed to USD

3. General + English + Default : switched to General group + English is on + no currency is set

4. General + French + USD : switched to General group + French is on + currency changed to USD

5. General + French +Default : switched to General group + French is on + no currency is set

6. General + Default + USD : switched to General group + English is on + currency changed to USD

7. General + Default + Default : switched to General group + English is on + no currency is set

8. Default + English + USD : no group is set + English is on + currency changed to USD

9. Default + English + Default : no group is set + English is on + no currency is set

10. Etc.


Warm-up mobile pages

Process Mobile View - Enable this option to warm-up mobile pages. Note, that the feature should be used if a separate mobile theme is installed on your Magento.

Mobile Agent - Specify mobile agents. The text, you'll enter in this field will be sent as a header on mobile requests.

User Agents - List user agents.


Exclude Pages

Exclude Pages - the option lets you exclude any pages from cache warming.


Exclude Blocks

Hole Punch - the feature allows you to exclude certain page blocks from cache warning. It's not always possible to cache the whole page, as certain sections are dynamic and unique to each customer. With the Hole Punch feature, you can mark certain blocks of a page to be loaded each time and never cached while still caching the rest of the page. You can exclude static or dynamic blocks.

1. Static Blocks

To find the info on Template and Block's class, you'll need to complete few steps. First, go to the Stores→Settings→Configuration→Advanced→Developer.

In Debug, set both the Enable Path Hints for Storefront and Add Block Type to Hints as Yes. When you go on the storefront, the pages will look like in the example below. The Template data will be displayed on the left, and Block class — on the right correspondingly.

2. Dynamic Blocks

To exclude the dynamic block from the cache, you'll need to insert the Template and the Block's ID.

First, configure the Debug as it was described in the Static Blocks Configuration above and copy the Template info.

To obtain the Block's ID, simply insert the ID from the Content→Blocks.


Connection Settings

Use HTTP Authentication - Use this option only if your website is protected with .htaccess

Disable certificate verification - Enable this feature only in case the FPC warmer doesn't work for https.


Debug Mode

IMPORTANT: The debug option works on the staging environment with native Magento cache. On the production environment with the activated Varnish Cache, the extension can't gather and process necessary data. Therefore, the Status & Hints are not available.

Show Cache Status Only For - specify particular IP addresses fro which cache statuses will be displayed. Leave the field blank if you don't want to limit cache status display.


Warmer Queue

To open the Warmer Queue grid please go to SystemWarmer Queue

Here is the list of page URLs waiting to be processed.

You can generate a warmer queue manually at any time you need by clicking the 'Generate Queue' button. It's also possible to manually trigger queue processing. To start processing URLs click the 'Start Warm Up' button'.


Warmer Log

The log grid shows already warmed URLs. The log contains all crawled page combinations specified in 'Page Combinations' tab. Easily filter log data by any parameter you need.

Flush Cache for particular URLs – If you change some product info, it's possible to flush cache for its product page only. It's useful as you won't need to warm cache from scratch for all the other URLs. You can do it by clicking the 'Flush Cache' button for each URL, or for the selected URLs via mass actions.


Warmer Activity Log

Here you can see the number of visits for each url of the store. Each url gets status based on the number of visits. It's used for 'Customer Activity Source' of queue generation.


Cron Tasks List

Magento 2 Full Page Cache Warmer extension is preintegrated with Cron Tasks List to provide store owners with an opportunity to track and manage all cron tasks running in the website background.

To view all scheduled and executed cron tasks, go to System → Cron Tasks List

Run all cron tasks and generate their schedule by clicking the ‘Run Cron’ button. Also you can delete separate tasks in bulk, apply filtering and sorting options when it is needed.


Performance Reports

Status Codes

To take a look at visual reports go to SystemAmasty FPCPerformance Reports .

Status Codes - The stats report shows page statuses, as well as the number of pages with each particular status for all processed pages. It's highly useful for showing the percentage of errors and success loads.


Warmed Pages

Warmed Pages - View Warmed Pages report to get the summary stats for requested pages for previous time periods. This way you can also understand when the crawler was most active.


Efficiency Report

Efficiency Report - The cache extension allows you to get a full picture of cache warmer efficiency. Choose the time period and see the percentage of hits and misses, track the performance by the crawler response time, etc.


Frontend Statuses

Check page statuses on the frontend.

The module displayed detailed information about not cacheable blocks.

Find out how to install the Full Page Cache Warmer extension for Magento 2 via Composer.

Rate the user guide
 stars  from 6 votes (Details)
magento_2/full_page_cache_warmer.txt · Last modified: 2019/10/17 14:08 by semenova