1

大家好,我对服务器的 RAM 和 PHP/MySQL/Jquery 脚本有疑问。

当脚本不占用额外的 RAM 时,脚本可以杀死 RAM 吗?(我知道当 RAM 增长到最大值或由于内存限制时可能会发生这种情况。但事实并非如此。)

我正在测试脚本,但每次我这样做时,RAM 都会迅速下降。脚本没有显示内存限制错误,它正确加载了所有数据。当我不测试脚本时,RAM 仍然处于关闭状态。

数据库中有几条记录 - 9 个表中可能有 350 条记录(大表有 147 条记录)。

(我没有任何日志只是简单地(非常简单)运行服务器的图表。)

谢谢你的时间。

4

1 回答 1

0

如果您的 PHP 错误日志中没有出现有关未能分配内存的错误,并且您没有看到服务器内存不足的其他问题(例如由于内存页面被写入磁盘以进行按需分页而导致的极端性能下降) ) 你可能不需要真正担心它。Web 服务器在单个请求中使用这么多内存的任何用例都将非常罕见。

至于试图分析实际内存使用情况,试图通过观察任务管理器之类的东西来分析它是非常不可靠的。大多数 PHP 脚本将在几毫秒内完成,这不足以让内存分配真正注册到任务管理器中。

即使您有更可靠的方法来分析内存使用情况(我不记得 PHP 是否为此内置了函数,但可能确实如此),请记住,由于可能很难的原因,内存使用量会大幅波动去理解。特别是 PHP 是非常高级的:您可以打开一个数据库连接,这涉及到操作系统打开网络套接字、创建内部数据结构、缓存事物等等的所有内容,所有这些都在一行代码中完成。该脚本可能会为单个数据库行分配数兆字节的内存,但可能会在一毫秒后释放它。

这些数据库大小可以忽略不计。根据行的大小,它可能低于一兆字节的数据,这对于任何远程现代的内存来说只是桶中的一小部分。不要担心这样的事情的内存使用情况。只有当您看到您的脚本失败并且您的错误日志报告内存不足时,您才真正担心它。

于 2012-12-17T23:32:38.813 回答