大型php文件上传

时间:2013-02-05 18:21:03

标签: php upload ram

嘿伙计们。

所以...我有一个网站,需要上传500MB大的文件。

我的问题是......我需要什么样的系统要求?特别关于记忆。要上传500MB文件,我需要500MB RAM吗?一次上传这种类型需要多少RAM才能成功?

1 个答案:

答案 0 :(得分:1)

PHP,或者更好的Web服务器,不会将整个上传缓冲在RAM中。

上传大小不直接取决于RAM大小。我不知道你的系统应该是什么样子,但我可以说我几年前用低成本的工作站处理了GB大小的更新。

请注意,如果要支持大型上传,则必须更改以下php.ini设置:

upload_max_filesize = '500M';

post_max_size = '500M';

再次关于内存:请注意,PHP不会消耗内存。 Web服务器将处理下载。你不会在PHP中担心这个。

如果使用Linux系统,则可以在键入

时查看tcp缓冲区大小
cat /proc/sys/net/ipv4/tcp_rmem

在终端。你会看到3个数字。最小,中等和最大缓冲区大小(以字节为单位)。在我的系统上是:

4096    87380   4115680

意味着最大缓冲区大小为~3.9MB,远小于500MB。

所以在这种情况下不要担心内存。它很可能是网络的瓶颈。