我需要让用户下载一些文件(例如,PDF)。什么会更长:
在第一种情况下,原始文件可能位于私有区域中。 但我认为用PHP发送这个文件需要一些时间。
那么我如何衡量PHP花费的时间来发送文件以及它可以消耗多少内存?
P.S。在第一种情况下,当PHP发送标题和浏览器(如果安装了pdf插件)将尝试在浏览器中打开它,PHP仍在工作,还是在立即发送标题后推出整个文件?或者如果没有安装插件,浏览器会显示“另存为”对话框,PHP仍在工作?
答案 0 :(得分:2)
如果您担心下载速度,那么它将会很少。
我想这取决于您的文件有多大,您希望有多少下载,以及您的文档是否应该公开访问,以及客户端的下载速度。
答案 1 :(得分:1)
PHP的主要问题是它消耗的内存 - 每个链接都会创建一个新进程,可能是8M - 20M,具体取决于你的脚本的功能,是否使用框架等。
出于兴趣,我编写了一个symfony应用程序来提供下载,并执行诸如并发限制,带宽限制等操作。如果您有兴趣查看代码,那就是here。 (我本身并没有许可,但如果你愿意,我很高兴能把它变成GPL3。)