php7使用xhprof造成内存泄露问题

最近,同事遇到一个问题,头疼了好多天。终于找到原因,特记下,以防后犯。

脚本切换php7执行,一段时间以后脚本就会报内存泄漏问题(但是该释放内存的地方都已经做了处理

经过同事不断的排查,最终定位在循环执行 函数体内的pdo->execute(array()) 这一行代码,传参发生变化,内存就涨的特别快。走了n多弯路后,改为使用bindParam(PDOStatement::bindParam)“成功”解决了问题。

生活处处有惊喜!!!......在测试环境运行原来的代码,竟没有复现问题。所以还是要继续追究问题根源。。。最后定位到是xhprof的问题。

总结:测试环境未开启xhprof,所以没有报错,正式环境开启了导致内存泄漏。

  • xhprof 是facebook 开发的一个测试php性能的扩展

看了下php官方手册:

xhprof php文档说明xhprof最后一次更新是在2013年。http://pecl.php.net/package/xhprof上的代码包,不支持php7,强行使用可能会出现意想不到的问题。

感谢这位博主给出的分析,大家可以仔细看下:https://blog.csdn.net/fanhengguang_php/article/details/60144471

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值