我可以在文件中使用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