Discuz!官方免费开源建站系统

 找回密码
 立即注册
搜索

[已解决] 对论坛发帖慢的分析结果,不得其解。求高手帮忙看下

[复制链接]
屠龙刀X 发表于 2013-11-8 17:55:30 | 显示全部楼层 |阅读模式
本帖最后由 屠龙刀X 于 2013-11-8 17:59 编辑

因为论坛的正常发帖有时会超过2s,最严重的能延迟到21s才能返回结果。正常状态下0.2s可以结束。为了能够了解发帖 程序的流程消耗的时间,我在source/include/post/post_newthread.php 里插入了时间time,
特别是这一段源代码第281行 左右(我插了时间函数,所以建议你们查找下),
然后我继续深入,即
代码实现在 source/class/model/model_forum_thread.php。
我在这个newthread的函数内部的头部 和尾部 也插入了测试代码。

然后替换服务器的同一文件,生产环境下会把时间统计结果 记录在一个日志文件上。
跑了半天,把日志文件下到本地进行分析,得到结果如下。


[dbinsert] 是第一张图片的代码包裹的测试结果
[block]是第三张图片 对函数实现的代码包裹的测试结果
注意红线,上面一条是正常的,下面是不正常,表明 发帖提交后花了10s才返回结果。而且dbinsert是10000ms,而block才不到100ms。
我想知道 这个时间差 是消耗到哪里去的?

请看帖的大牛 帮忙回答,具体不懂的可以回复我。我怀疑是进程一下子被锁?。不知道是不是这个原因。
这个”消失的时间“问题怎么解决呢?





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

hyzy2013 发表于 2013-11-15 11:42:38 | 显示全部楼层
本帖最后由 hyzy2013 于 2013-11-15 11:46 编辑

这个问题已经解决了。发帖后 会有个手机图片压缩(压缩两个尺寸)。关闭这个功能(后台-》 全局》上传设置 》 是否生成手机版缩略图  选择否)就不会出现很慢的原因。上面的时间消失 经过xhprof分析,是class_image的thumb方法占了很大的比例。每一张调用两次。。
回复

使用道具 举报

zuovoo 发表于 2014-1-16 10:34:34 | 显示全部楼层
已经关闭了这个功能,解决了跳转空白的问题,但还是很慢,相对2.5慢很多很多,好蛋疼啊!
回复

使用道具 举报

zuovoo 发表于 2014-1-16 10:34:57 | 显示全部楼层
hyzy2013 发表于 2013-11-15 11:42
这个问题已经解决了。发帖后 会有个手机图片压缩(压缩两个尺寸)。关闭这个功能(后台-》 全局》上传设置  ...

已经关闭了这个功能,解决了跳转空白的问题,但还是很慢,相对2.5慢很多很多,好蛋疼啊!
回复

使用道具 举报

@余新启 发表于 2014-1-16 10:53:52 | 显示全部楼层
建议在mysql中使用show processlist获取慢查询语句,或者mysql数据库开启慢日志
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-9-10 06:00 , Processed in 0.133887 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表