首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP memory_get_usage比memory_limit大

PHP memory_get_usage比memory_limit大
EN

Stack Overflow用户
提问于 2013-08-07 21:10:49
回答 1查看 12.2K关注 0票数 6

我的PHP应用程序运行得有点慢,而且目前内存效率不是很高。我的整个服务器经常宕机,我想这是我的错。我想我应该监控内存使用情况,并检查我有多少内存作为限制:

代码语言:javascript
运行
复制
echo 'Memory in use: ' . memory_get_usage() . ' ('. memory_get_usage()/1024 .'M) <br>';
echo 'Peak usage: ' . memory_get_peak_usage() . ' ('. memory_get_peak_usage()/1024 .'M) <br>';
echo 'Memory limit: ' . ini_get('memory_limit') . '<br>';

这将显示以下内容:

代码语言:javascript
运行
复制
Memory in use: 629632 (614.921875M) 
Peak usage: 635696 (620.796875M) 
Memory limit: 128M

这怎么可能呢?正在使用的内存是否远远大于内存限制?要么是什么东西真的坏了,要么是我根本不明白memory_limit设置(或memory_get_usage() )是如何工作的

谢谢你们所有人。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-07 21:21:35

memory_get_usage以字节为单位返回它,您正在计算的内容实际上是以kB为单位。将其再次除以1024即可在MB中计算。

memory_get_peak_usage也是如此

例如:

代码语言:javascript
运行
复制
echo 'Memory in use: ' . memory_get_usage() . ' ('. ((memory_get_usage() / 1024) / 1024) .'M) <br>';
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18104285

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档