论Mediawiki为何这么坑爹

呃,反正一直是给机油搭把手,所以手上有给一个Mediawiki网站做运维。然后不知道从什么时候开始,编辑变得很慢很慢,甚至有时候会长达数十秒,经常性导致CDN等不及返回504。

排查的过程可谓艰辛,大概从几个月前就开始排查。从CPU,内存,IO,连接数等等等都全部查了一遍,服务器上的程序也都重新编译了一遍,然而并没有什么用。甚至大量的优化设置还是没什么效果。

刚刚,就在刚刚,我发现了Mediawiki原来有Debug log……(喂你怎么才发现)

然后,仔仔细细地看了一遍……

坑爹啊!

SpamBlacklist这个插件!对提交的全文,进行正则匹配。这个正则表达式长达数百KB,一匹配少则几秒,多则数十秒……我靠!谁特么写的傻逼插件!

关了,丝滑般流畅……

UPDATE:

发现邮件也会拖慢速度。本来这个默认是异步的,但是不知道为什么失败了。所以我更改了一下设置。

$wgEnotifUseJobQ = true; #使用队列发送邮件

$wgJobRunRate = 0; # 不在访问时处理队列

然后用crontab来定时处理队列。

现在编辑基本在1s以内,太棒啦!

“论Mediawiki为何这么坑爹”的10个回复

  1. 我想知道你是怎么学的!你那有这些类似的专门学习的课程或则活动什么的吗?? 还是说就是兴趣使然。这里看起来,感觉真是厉害

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注