devel:caching
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
devel:caching [2016-10-09 21:37] – [Purging the cache] treegb | devel:caching [2023-09-02 16:31] (current) – Klap-in | ||
---|---|---|---|
Line 8: | Line 8: | ||
http:// | http:// | ||
- | FIXME Some of your URL might look like this ''? | + | Some of your URL might look like this ''? |
- | http:// | + | http:// |
+ | http:// | ||
To force recaching of all pages, including page instructions, | To force recaching of all pages, including page instructions, | ||
Line 18: | Line 19: | ||
To purge the editor toolbar (and other cached JavaScript) call | To purge the editor toolbar (and other cached JavaScript) call | ||
http:// | http:// | ||
- | and clean up your browser' | + | and clean up your browser' |
You can also clear the CSS cache in the same way: | You can also clear the CSS cache in the same way: | ||
http:// | http:// | ||
+ | |||
===== Two-Stage-Caching ===== | ===== Two-Stage-Caching ===== | ||
DokuWiki uses two cache files per page. To understand this you need to know that a page is parsed to an intermediate instruction format first before it is rendered to XHTML. DokuWiki caches both -- the instructions and the rendered XHTML. | DokuWiki uses two cache files per page. To understand this you need to know that a page is parsed to an intermediate instruction format first before it is rendered to XHTML. DokuWiki caches both -- the instructions and the rendered XHTML. | ||
- | * __Instruction Cache__ \\ The instruction cachefile only gets updated when the page, the config files(('' | + | * __Instruction Cache__ \\ The instruction cachefile only gets updated when the page, the config files(('' |
* __%%XHTML%% Cache__ \\ The XHTML cache is also affected by a maximum cache age setting ([[: | * __%%XHTML%% Cache__ \\ The XHTML cache is also affected by a maximum cache age setting ([[: | ||
Line 51: | Line 53: | ||
- | ==== developer | + | ==== Developer |
A simple measure to avoid caching is that plugin developers turn off caching completely. This is discouraged due to the extra rendering activities, in particular adversely for high traffic wikis. Instead of the plugin developers make use of the functionality to influence the cache by checking (themself formulated) dependencies. Therefore a syntax plugin will need to: | A simple measure to avoid caching is that plugin developers turn off caching completely. This is discouraged due to the extra rendering activities, in particular adversely for high traffic wikis. Instead of the plugin developers make use of the functionality to influence the cache by checking (themself formulated) dependencies. Therefore a syntax plugin will need to: | ||
* save some information relating to the pages it's involved with and the dependency specific to each of those pages. | * save some information relating to the pages it's involved with and the dependency specific to each of those pages. | ||
- | * add an [[action_plugin]] component to handle the '' | + | * add an [[action plugin]] component to handle the '' |
- | Caching itself is handled by the cache object(('' | + | Caching itself is handled by the Cache object(('' |
* the '' | * the '' | ||
* '' | * '' | ||
* '' | * '' | ||
- | * '' | + | * '' |
- | * the cache name, '' | + | * the cache name, '' |
=== Individual Page Cache Expiry === | === Individual Page Cache Expiry === | ||
Line 69: | Line 71: | ||
/* code to expire the cached xhtml of page ns:page | /* code to expire the cached xhtml of page ns:page | ||
* $id = ' | * $id = ' | ||
- | * $data = array(' | + | * $data = array(' |
- | * $render = false; | + | * $render = false; |
- | * $persistent = false; | + | * $persistent = false; // this change doesn' |
+ | | ||
*/ | */ | ||
p_set_metadata($id, | p_set_metadata($id, | ||
</ | </ | ||
- | ===== Purge cache button ===== | ||
- | |||
- | In the default theme I tend to add a button for end users to purge cache if they want to. Edit '' | ||
- | <div class=" | ||
- | <?php tpl_button(' | ||
- | <?php tpl_button(' | ||
- | <?php print html_btn(' | ||
- | </ |
devel/caching.1476041852.txt.gz · Last modified: 2016-10-09 21:37 by treegb