长时间运行的PHP脚本使httpd.exe使用大量内存

时间:2015-03-11 19:23:18

标签: php apache memory-leaks imap

我编写了一个连接到邮件服务器的脚本,用于下载所有附件并将其存储在数据库中。

由于邮箱非常大,邮件服务器速度很慢,因此需要几个小时才能完成。

在处理了大约10.000条消息(消息计数不准确且不同)之后,脚本因错误而死:“PHP致命错误:内存不足(分配7077888)(试图分配2815819字节)”

我已经检查过任务管理器,并且httpd.exe进程的内存使用量逐渐上升到1.5GB(脚本运行1个半小时后),而且循环中的memory_get_usage()不断报告一些关于351.33kB,这不会让我觉得我的剧本有漏洞。即使有泄漏,我该怎么检查呢?

我在Windows Server 2008 R2上使用PHP / 5.4.16(SAPI)运行Apache / 2.2.17(Win32)

我的循环包括用imap函数阅读电子邮件内容并将附件内容逐一存储在数据库中

我已经切换到memory_get_usage(true),几乎不断报告1.25MB

0 个答案:

没有答案