»
返回PHPEye网站首页
游客:
注册
|
登录
|
统计
|
帮助
PHPEye开源社区
»
PHP技术讨论区
» Xdebug和WinCacheGrind分析Smarty效率问题
‹‹ 上一主题
|
下一主题 ››
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
标题: Xdebug和WinCacheGrind分析Smarty效率问题
lizyy
新手上路
UID 1753
精华 0
积分 0
帖子 6
翻译 0
原创 0
阅读权限 10
注册 2008-8-3
状态 离线
#1
使用道具
发表于 2008-8-7 19:18
资料
短消息
加为好友
Xdebug和WinCacheGrind分析Smarty效率问题
Xdebug 和 WinCacheGrind 组合 是测试PHP的最好搭档,他们能帮助我们解决很多问题
安装方法我就不多讲了,主要是给大家介绍下使用方法:
先强调下WinCacheGrind中的时间 比实际时间少10倍,也就是你们理解的时候 10MS就是10ms
下面是实际例子来分析一下我的BLOG。
首先执行页面,得到执行时间 0.551074981689 秒(我自己计算的)
那么我们来实际分析下 为什么执行了接近半秒的时间
这里我们发现 smarty的执行时间竟然占用了 全部时间的61.61%
点击打开详细看一看
原来 smarty在display的时候要include 编译好的 模板文件 这个编译过程 占用了 smarty->display的98.77%的时间。我们可以看到右侧 SMARTY在这段时间做的事情
几乎大部分时间用到了 smarty_modifier_truncate上
原来 在我的BLOG 有个文章截取一部分的功能,我用的是 SMARTY的truncate
即:|truncate:280 而没有使用 substr来截取。
于是我把 文章的 truncate去掉改为 php程序中substr来截取
再执行一次看看
0.2551009655 !!!!
经验提高了 一半的效率 缩短了一大半的时间
让我们看看 这个时候smarty 占用页面执行时间的多少 :
27.61%
从67%缩短到了21% 这个效率的提高巨大的。
本次测试 让我们了解到了........
...........
查看全文(摘自:lzy 源创.博客)
欢迎访问我的BLOG
www.i-cando.cn
smallipis
新手上路
UID 636
精华 0
积分 0
帖子 7
翻译 0
原创 0
阅读权限 10
注册 2007-12-12
状态 离线
#2
使用道具
发表于 2008-8-19 16:09
资料
短消息
加为好友
那难道不用truncate 这函数么?
在php里截取很麻烦,因为一般取出来的信息是一或二维数组...难道再循环处理么..
另你的truncate是不是修改了很多.(本人的修改成支持中文的)
我用ZEND debugger .用到truncate的最大是 0.1ms,且很多是小于0.1ms的...页面用了truncate过50次
为什么你的是大于1ms的?
[
本帖最后由 smallipis 于 2008-8-19 16:34 编辑
]
投票
交易
悬赏
活动
PHPEye开源社区
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
基本概况
论坛排行
主题排行
发帖排行
积分排行
在线时间
管理团队
当前时区 GMT+8, 现在时间是 2008-10-12 18:07
Powered by
Discuz!
5.5.0
© 2001-2007
Comsenz Inc.
Processed in 0.013078 second(s), 6 queries , Gzip enabled
TOP
清除 Cookies
-
联系我们
-
PHPEye开源社区
-
Archiver