帮助:Huiji缓存
灰机有多层缓存机制来优化用户的访问速度。
缓存类型 | 来自 | 缓存内容 | 缓存时间 | 影响 | 主动刷新方法 | ||
---|---|---|---|---|---|---|---|
本地缓存 | 浏览器缓存 | 浏览者电脑 | 图片,脚本等资源 | depends | 所有人 | 因浏览器而异 | |
服务器缓存 | 文件级缓存 | CDN缓存 | 灰机服务器 | 图片、字体、CSS和Javascript | 立刻(图片)
1h(CSS/JS) |
所有人 | 调试按钮(仅管理员、行政员可见)
?debug=1 |
静态缓存 | 灰机服务器 | 绝大多数页面的Html | 24h | 匿名用户 | ctrl+R | ||
内存级缓存 | ParserCache | MediaWiki | 模板、统计数据、动态列表、页面是否存在等需要耗时查询的内容 | 1天 | 所有人 | 清除缓存按钮(仅管理员、行政员可见)
?action=purge | |
非ParserCache | MediaWiki | depends | 所有人 | 无 |
本地缓存
储存在您浏览器中的缓存,与网站无关。
缓存内容:图片,脚本等资源。
缓存时间:由文件头和浏览器决定。
主动刷新方法:
- Firefox/Safari:按住“Shift”的同时单击“刷新”,或按“
Ctrl-F5
”或“Ctrl-R
”(Mac为“⌘-R
”) - Edge/Google Chrome:按“
Ctrl-Shift-R
”(Mac为“⌘-Shift-R
”) - Internet Explorer✝:按住“Ctrl”的同时单击“刷新”,或按“
Ctrl-F5
” - Opera✝:在“工具→首选项”中清除缓存
静态缓存
将数据库查找、逻辑处理后生成的最终Html和域名对应起来,下次访问相同域名时直接输出最终结果。
缓存内容:绝大多数页面的Html。
常见情况:修改页面后,未登录用户并没有看到最新内容。
缓存时间:24小时。
例外:为了方便大家浏览最新内容,登录用户会绕过本层缓存,直接看到最新信息。
主动刷新方法:登录,或匿名状态下强制刷新页面。
TIPS:当编辑者编辑完页面后,如果期望匿名访问者马上看到最新的更改,可以退出登录或者使用浏览器的“匿名模式”访问当前页面并强制刷新(按“Ctrl-Shift-R”,Mac为“⌘-Shift-R”),即可保证匿名访问的缓存页面同步到最新状态。
CDN缓存
全称是“Content Delivery Network"。缓存小文件到物理距离与访问者最近的服务器,以提升加载速度。
缓存内容:图片、字体、CSS和Javascript。
缓存时间:图片:更新后立即刷新,CSS/JS: 1小时。
调试方法:在页面后加?debug=1
然后刷新、或者点击“调试”按钮(仅管理员可见)。
Memcached缓存
读取数据库、解析维基文本的速度慢于读取内存,所以我们将一些常用的内容放在了内存中。
缓存内容:模板、统计数据、动态列表、页面是否存在等需要耗时查询的内容。
常见情况:常见于修改了模板内容后并没有显示更新。(因为修改了模板,不等于修改引用了模板的页面,所有引用了该模板的页面不会自动更新,需要等待一定的时间由MediaWiki刷新,当页面发生编辑时,会自动刷新Memcached缓存。)
缓存时间:由程序依照需求分配。
主动刷新方法:
- 清除ParserCache(即正文中的缓存),在页面后加
?action=purge
然后刷新(全部MediaWiki网站通用)、或者点击“清除缓存”按钮(在灰机仅管理员可见)。 - 非ParserCache(正文以外的缓存),需要耐心等待缓存失效。