如何测试/查看PHP脚本的内存占用量?

时间:2018-12-16 23:36:19

标签: php performance xdebug

在WordPress中,可以使用某些参数调用WP_Query类,以从数据库中检索帖子(数据)。不幸的是,对象本身很大,如果它检索300-400个帖子,它就会变得非常忙碌,因为假设您将这个WP_Query及其新发现的帖子存储在一个数组中,它很快就会变得很大,我可以看到它在本机已经很强大的本地主机上消耗了大约30-40mb的内存,所以我决定在服务器上进行测试,因为它运行的是Linux,但内存使用率仍然较低。

现在,假设我有800条帖子。这是一种非常非常真实且经常遇到的可能性,哎呀,我看到很多客户站点上的帖子都更多。

很明显,我的脚本将首先在错误的主机上超过执行时间,其次,如果到达此处,则将耗尽内存。

我有点知道如何解决它,并取得了很好的成功,但是我完全是盲目的,只是看着任务管理器的内存消耗之间的差异。

是否没有工具可以将某个脚本的内存消耗及其执行时间映射在一起? XDEBUG仅显示执行时间。

1 个答案:

答案 0 :(得分:1)

一般来说,如果我可以通过SSH或其他方式访问,通常我会使用<img src="<?php echo $avatar_location;?>" alt="Avatar" class="avatarlogin"> 命令(对于Linux机器)。这里是所有与内存检查相关的命令的列表: https://www.cyberciti.biz/faq/linux-check-memory-usage/

我使用的另一件事是这个插件:https://wordpress.org/plugins/wp-server-stats/ 但是,它只会告诉您有多少可用/使用的内存。告诉您哪个脚本正在使用内存还不够详细。

最后,我最喜欢的用于诊断查询问题的插件之一: https://wordpress.org/plugins/query-monitor/

让我知道这些信息是否没有提供足够具体的细节,我们可以进一步进行深入研究:)