gpt4 book ai didi

php - 如何确定哪个 PHP 代码打开了未关闭的 MySQL 连接

转载 作者:太空狗 更新时间:2023-10-29 11:28:16 28 4
gpt4 key购买 nike

我们有一个应用程序,它由几个现成的 PHP 应用程序(ExpressionEngine 和 XCart)以及我们自己的自定义代码组成。

我没有进行实际分析,所以我不知道它是如何确定的,但是听到太多 MySQL 连接未关闭并不感到惊讶(我并不感到惊讶,因为我已经看到显着的内存泄漏在我们的开发服务器上,在一两天的时间里,从初始启动时的 100MB 开始,整个 RAM 都被消耗掉,只有很少一部分被缓存。

那么,我们如何才能准确地确定哪个 PHP 代码是罪魁祸首呢?我以前有过 XDebug 的经验,并建议,当我们的独立的、暂存环境相当稳定时,我们在开发上改造 XDebug 并使用它来做一些分析。这是否合理,和/或其他人是否有更具体和/或额外的建议?

最佳答案

你可以使用

 SHOW PROCESSLIST  

查看正在运行的进程的 SQL 命令。这将告诉您每个进程正在使用的用户名、主机、数据库等。这应该让您了解发生了什么,尤其是当您访问了多个数据库时。

更多信息:https://dev.mysql.com/doc/refman/8.0/en/show-processlist.html

关于php - 如何确定哪个 PHP 代码打开了未关闭的 MySQL 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1643652/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com