资讯专栏INFORMATION COLUMN

[听云] 一个discuz论坛的性能调优

guqiu / 3361人阅读

摘要:原有数据最高在线人数人的某论坛,。的真面目结论貌似也是可以进行这种性能调试的,以后好好研究下。后记第二天观察听云报告,有些访问有的时候卡在一个文件很长时间打开这个文件查看,发现这个问题出在问题出在是从官方自动获取标签的功能。

  

已经受不了某bbs的龟速了,自己又不太可能去直接写探针插入php文件里面进行监控,毕竟是很复杂的discuz,加之昨晚在一台基本没人访问服务器上试用了听云,于是打算在这台bbs的服务器上部署听云、监测性能。

原有数据:

最高在线人数1500人的某论坛,discuz

原有访问时间统计大概在10-12秒左右,图中所示为调整后的响应时间。

安装听云:

Gentoo系统,所以下载bin安装包。

不出所料,听云是无法识别到底是哪个php的,服务器安装了php-cliphp-cgiphp-fpm三个sapi,于是听云安装成了cli-php5.5的插件。

手动
mv /etc/php/cli-php5.5/ext-active/networkbench.ini mv /etc/php/fpm-php5.5/ext-active/
nano /etc/php/fpm-php5.5/ext-active/networkbench.ini,修改application name
/etc/init.d/php-fpm restart

等待测试报告:

关键过程1

这里有一个SQL查询瓶颈,在pre_home_notification表,于是进入查询。
数据表大约400M大,select count查询大约在4.3S左右,于是肯定这里需要有问题。
查询网络,搜到相关资料:“home_notification表会有定时任务进行清空。”

于是grep -r home_no www,搜到www/source/include/cron/cron_cleannotification.php文件,进入discuz后台查询,没有这个文件,手动添加这个计划任务,执行后,pre_home_notification表瞬间变为4M大小。也不再收到相关的关键过程记录。

关键过程2

解决1后,仍旧有很大的延迟,而且响应似乎完全没有改变,于是继续查询关键过程,发现关键过程2:

是在seccheck中调用两次fgets,直接导致网站访问速度慢。
搜索seccheck的代码:

文件在www/source/class/helper/helper_seccheck.php,可以看出有一个cloudip,那么根据后台功能猜测是“云IP屏蔽”之类的功能,进入后台关闭。

结果

这次直接命中要害:
seccheck的延迟直接没有,平均值也变为0.044秒。

seccheck的真面目:

结论

貌似xdebug也是可以进行这种性能调试的,以后好好研究下。

后记

第二天观察听云报告,有些访问有的时候卡在一个文件很长时间:

打开这个文件查看,发现这个问题出在:

问题出在是从discuz官方自动获取标签的功能。
嗯,应该去找站长联系取消标签功能,或者类似的。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/30228.html

相关文章

  • 借助Docker和Kodexplorer实现简易化部署Discuz论坛网站

    摘要:在主机输入框中输入自己的云服务器分配的公网,其他设置不变,点击连接之后会出现安全警告,如果是在自己的电脑上操作的话,接受并保存即可。 基于DiscuzX系列构建的论坛可以说是大家在日常浏览各类BBS网站中接触最多的论坛类型了。本教程旨在引导读者通过简单明确的一些步骤就打造出自己的论坛网站,做一个实实在在的站长。 工具/原料 腾讯云服务器 CentOS 7.2 64位;远程控制程序 ...

    happen 评论0 收藏0
  • 借助Docker和Kodexplorer实现简易化部署Discuz论坛网站

    摘要:在主机输入框中输入自己的云服务器分配的公网,其他设置不变,点击连接之后会出现安全警告,如果是在自己的电脑上操作的话,接受并保存即可。 基于DiscuzX系列构建的论坛可以说是大家在日常浏览各类BBS网站中接触最多的论坛类型了。本教程旨在引导读者通过简单明确的一些步骤就打造出自己的论坛网站,做一个实实在在的站长。 工具/原料 腾讯云服务器 CentOS 7.2 64位;远程控制程序 ...

    LeexMuller 评论0 收藏0
  • 一个小程序(Discuz! + 微信小程序)

    摘要:微信小程序开发官方文档,正在开发的小程序的源码,都给了我不少启发到小程序上富文本的解析一个优秀的开源项目微信小程序富文本解析组件作用在于解析你论坛上的帖子内容,你论坛上加粗的文字,加了颜色的文字,图片等等,都可以原原本本的展示在小程序中。 关于这个小程序 Github : https://github.com/DowneyL/di...‘ 这个小程序是公司针对一个自家产品的需求,而这个...

    YacaToy 评论0 收藏0
  • 在云服务器上面部署Discuz论坛

    摘要:首先购买云主机服务器,本次部署使用天翼云的云主机。一直点击下一步,直到出现这个界面数据库密码就是刚才设置的论坛账号密码大家随便输一个,但请一定要记住点击下一步即可安装登录云主机的,即可出现下面这个安装成功恭喜你 首先购买云主机服务器,本次部署使用天翼云的云主机。 一、前期准备 1、一台有外网弹性IP的云主机,并切换好系统centos 6.5 64位,设置云主机安全组保证22、81端口开...

    wua_wua2012 评论0 收藏0

发表评论

0条评论

guqiu

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<