MediaWiki新版本中增加批量生成FileCache的维护程序

来自Jamesqi
跳转至: 导航搜索

--James Qi 2009年6月19日 (五) 11:36 (CST)

  随着网站数据量和访问量的增加,不得不使用MediaWiki的文件缓存功能来降低服务器负载,前一阵子把File Cache的过期时间删除后,效果不错,但也发现有缓存错误而无法更新的情况,让同事帮忙写了脚本每天自动扫描错误的缓存文件,这个基本可以解决问题。

  但让浏览者来访问的时候自动产生缓存有事会造成访问慢的情况,在MediaWiki 1.10.0升级到1.15.0后还需要整个网站全部缓存都需要重新生成的情况,在runJobs.php中有更新FileCache的功能,我当时想要是能有专门的生成、更新FileCache的程序就好了,今天在1.15.0的maintenance中发现有个rebuildFileCache.php,果然就是用于批量生产、更新FileCache的,这就太方便了!

  用法也很简单:php rebuildFileCache.php <start> [overwrite]就可以,其中<start>可以从0开始,如果需要全部重新生成就带上overwrite的参数。

  在一个1000多个页面的小网站Test:试用了重新生成File Cache,速度有些慢,但功能是能基本实现的。但发现几个问题需要注意:

  1. 页面下方发现多了计数器,可以注释掉这行:“$wgDisableCounters = false; // no real hits here”来解决;
  2. 生成的文件中“var wgServer = "http://wiki139";”、“取自"<a href="http://wiki139/...”,没有真正的网址,可以在程序增加一行:“$wgServer = "http://027.jamesqi.com";”来解决;
  3. 再仔细检查看看发现这个程序似乎没有去读取MonoBook.php中包含的其它文件特定设置,只有直接修改MonoBook.php,把需要补充的内容直接放在这里文件中,就基本解决了。

  以后可以在需要的时候,像运行runJobs.php一样来集中执行rebuildFileCache.php,这对于我们网站来说确实很有用!

  另外,1.10.0版本中没有这个程序,可以将1.15.0版本中的程序复制到对应的maintenance目录下使用,运行中会有一些报错,但不影响继续生成缓存文件。

标签:MediaWikiFile Cache维护程序
相关内容:
  1. 2010-11-10 22:20:28 MediaWiki-1.15升级到1.16.0步骤
  2. 2010-11-04 22:52:58 开启MediaWiki的搜索建议(Search Suggest)功能
  3. 2010-11-03 11:26:02 MediaWiki-1.15.0升级到1.16.0中出现的问题
  4. 2010-11-02 23:52:05 MediaWiki-1.15准备升级到1.16
  5. 2010-10-22 22:29:00 想写一本关于MediaWiki的书,有人需要吗?
  6. 2010-09-20 11:33:29 直接操作MediaWiki的MySQL数据库
  7. 2010-09-04 00:20:09 修改模板对付MediaWiki及扩展程序的Bug
  8. 2010-08-31 00:47:49 分割大容量MediaWiki数据库
  9. 2010-07-08 23:08:13 用HTML和站间链接减小MediaWiki数据库记录
  10. 2010-06-12 12:27:01 将数据导入MediaWiki进行到底
  11. 2010-05-20 22:01:46 导入大量名录数据到MediaWiki网站的例子
  12. 2010-05-05 15:06:09 不懂PHP编程也可以修改MediaWiki程序
  13. 2010-04-03 22:45:40 MediaWiki导入XML数据中需要转义的字符
  14. 2010-04-02 00:38:01 用MediaWiki搭建多语言网站群框架
  15. 2010-04-01 16:05:48 在美国VPS上升级MediaWiki

关于“MediaWiki新版本中增加批量生成FileCache的维护程序”的留言:

目前暂无留言

新增相关留言