大文件上传内存问题PHP

时间:2010-05-12 18:58:59

标签: php file-upload scaling litespeed

我最近接管了一个文件托管网站(类似于rapidshare,megaupload等),目前平均每天约有75,000名访客。迁移后,我们从头开始编写自己的系统。现在是升级基础架构的时候了,并且一直在使用Web服务器和扩展。现在问题是文件上传完成后,Web服务器没有“刷新”已用尽的内存。我们上传了多个300MB +文件,在上传之前,我们有大约3.7G的内存空闲,上传3个300M文件后,内存使用率大约为1.2G。最初,我们认为它可能是apache问题,但升级到Litespeed也没有解决它。这是“顶部”

中的“内存使用情况”

内存:总计4015996k,使用1206036k,免费2809960k,缓冲114984k

我正在摸索着弄清楚如何在上传期间“刷新”网络服务器或php使用的内存,因为这样系统将耗尽内存并立即崩溃。

这是我的php.ini值:

max_execution_time = 6000 max_input_time = 6000 memory_limit = 2048M post_max_size = 2047M upload_max_filesize = 2047M

在Apache上,php在fcgi和Litespeed上运行,它是Litespeed SAPI。

谢谢, 比尔

1 个答案:

答案 0 :(得分:3)

我只知道它是“缓存”,我可以通过这个命令释放它: echo 3>的/ proc / SYS / VM / drop_caches

cat /proc/meminfo

MemTotal:4015996 kB MemFree:2490780 kB 缓冲区:118232 kB 缓存:1204168 kB SwapCached:0 kB 活动:358748 kB 不活跃:991220 kB 活跃(匿名):28024 kB 非活动(匿名):0 kB 活动(文件):330724 kB 不活动(文件):991220 kB 不可挽回的:0 kB Mlocked:0 kB HighTotal:3179664 kB HighFree:1918528 kB LowTotal:836332 kB LowFree:572252 kB SwapTotal:48827384 kB SwapFree:48827384 kB