从命令行跟踪PHP内存使用情况



我可以在文件中使用ini_set('memory_limit', '512M');,也可以从命令行使用php -d memory_limit=512M,但也可以从终端跟踪内存使用情况?

我知道我可以在PHP文件中使用memory_get_usage(),但如何从命令行跟踪它?

尝试:

$ watch -n 5 'php -r "var_dump(memory_get_usage());"'

这将每5秒观察一次内存状态

或者您可以使用"ps"工具:

$ ps -F -C php-cgi

输出:

UID        PID  PPID  C    SZ   RSS PSR STIME TTY          TIME CMD
http     10794 10786  0  4073   228   0 Jun09 ?        00:00:00 /usr/bin/php-cgi

RSS是进程的实际内存(常驻集(大小(以千字节为单位(。

我想要的具有简单输出的解决方案是

watch -n 5 'php -r "echo (string) memory_get_usage(true)/pow(10, 6);"'

将返回PHP进程正在使用的MB数

2.097152

注意:macOS机器上类似ps -F -C php-cgi的解决方案将在中失败

ps: illegal option -- F

最新更新