Frequently asked questions

What Page Cache warmer does?

Page Cache Warmer is a crawler (powered by Magento Cron job) which visits uncached pages like user and adds those pages to the cache. More pages will be in cache, so in result whole store will be faster. It can be used either Magento standard Cache or Varnish. It works with other cache types (like redis) without any problem. If you use varnish please check that it is configured correctly http://devdocs.magento.com/guides/v2.0/config-guide/varnish/config-varnish-configure.html (Verify HTTP response headers)

What can I do if all pages have "Pending" status?

Varnish:

If you set in STORES->Configuration->ADVANCED->System->Full Page Cache->Caching Application = Varnish Cache (Recommended) please check that Varnish is installed on server. For this run in command line as follows: varnishd -V. If result is corret you should see varnish version. varnishd_v.png Please switch store to Built-in mode ( STORES->Configuration->ADVANCED->System->Full Page Cache->Caching Application = Built-in Cache ) and set "Show cache status" = Yes in STORES->Configuration->Mirasvit Extensions->Page Cache Warmer->Debug and check if your pages are cacheable. You should see "PAGE HIT" hit.png If after second visit you see that pages are not cacheable ("PAGE MISS") you need to fix it (How can I make pages cacheable?). miss_blocks.png f you see "PAGE HIT" most likely Varnish is not configured to work with magento. You can check using this way http://devdocs.magento.com/guides/v2.0/config-guide/varnish/config-varnish-configure.html (Verify HTTP response headers).

Note

Our extension will work with your store only when Varnish will be configured correctly or if you switch store to Built-in mode ( STORES->Configuration->ADVANCED->System->Full Page Cache->Caching Application = Built-in Cache ).

Built-in Cache:

If you set in STORES->Configuration->ADVANCED->System->Full Page Cache->Caching Application = Built-in Cache set "Show cache status" = Yes in STORES->Configuration->Mirasvit Extensions->Page Cache Warmer->Debug and check if your pages are cacheable. If should see "PAGE HIT". If after second visit you see that pages are not cacheable you need fix it (How can I make pages cacheable?).

How check if my pages are cacheable?

Set in STORES->Configuration->ADVANCED->System->Full Page Cache->Caching Application = Built-in Cache After second visit you should see "PAGE HIT". hit.png If you see something like this miss_blocks.png on home page, category page or product page this means that page is not cacheable, because blocks ( customer, authorization-link-login, header) use "cacheable=false" in xml file. You need fix it (How can I make pages cacheable?)

How can I make pages cacheable?

If you see that page is not cacheable (home page, category page or product page) miss_blocks.png you need to connect to your server via ssh and run grep -r "[your_block_name].*cacheable" * --include="*.xml" where [your_block_name] is not cacheable block which you can see on Warmer info block.

Example: cd [magento_root_folder]/app/code grep -r "authorization-link-login.*cacheable" * --include="*.xml"

cd [magento_root_folder]/app/design grep -r "authorization-link-login.*cacheable" * --include="*.xml"

[custom_theme]/Magento_Customer/layout/default.xml <block class="Magento\Customer\Block\Account\AuthorizationLink" name="authorization-link-login" cacheable="false" template="account/link/authorization.phtml"/>

You see name="authorization-link-login" cacheable="false" in file [custom_theme]/Magento_Customer/layout/default.xml. So you need to delete cacheable="false"

After this you need to refresh all cache in Cache Management and you should see "PAGE HIT". hit.png

How can I stop cache flushing?

Looking on this image fill_rate.png you can see how often your store flushes cache (Page Cache Wermer don't have functionality for cache flushing). To see reason of the cache flushing you can enable "Log tags for cache flushing" and "Log backtrace for cache flushing" in Page Cache Warmer configuration. log.png Result will be in file /var/log/clean.log In most situations the reason of flushing will be very often reindex (FPC flush cache if you do reindex) or very often product save (FPC flush cache for depending pages if you save products). Also products can be saved via external servise using webapi. You may need to configure your system to not save products too often and process reindex not more than once per day. If it is impossible you can set "Forbid cache flushing=Yes".

Note

If Forbid cache flushing enabled FPC stops flushing cache on products and categories change. With the function enabled you can flush cache only in "Cache Management" or if cache will be expired (depends on TTL).

How can I control average system load?

In SYSTEM->Page Cache Warmer->Jobs you can see "Average system load". avg_system_load.png You can reduce system load by adding limit for "Don't run warmer job if average system load more than (%)" (for example 80). If average system load will be more than 80 warmer will not start warming process.