我有一个网站,用户可以上传mp3文件(uploadify),使用html5播放器(jplayer)流式播放,然后使用php脚本(www.zubrag.com/scripts/)下载。
当用户上传歌曲时,音频文件的路径将保存在数据库中,我正在使用该数据播放并显示该歌曲的下载链接。 我遇到的问题是,根据我的主机,这种方法在服务器上使用了大量内存,这是专用的。
链接到脚本:http://pastebin.com/Vus8SRa7
我该如何正确处理脚本?什么是追踪问题的最佳方法?有关清理代码的任何想法?
任何帮助都非常感激。
答案 0 :(得分:1)
我建议将您的文件存储在磁盘上(命名为随机[检查冲突!]或顺序,没有文件扩展名,在文档根目录之外),并且只在您的数据库中存储信息。以这种方式从磁盘流式传输文件比从数据库结果传出文件要容易得多。
从数据库结果中检索整个文件的内容时,该数据必须在内存中。 readfile()
没有此问题。如果您愿意,可以在将文件发送回客户端时使用标头返回原始文件名。
答案 1 :(得分:0)
我建议您在将HTTP的二进制数据写入HTTP输出时不要缓冲内容。这样你就可以在物理和虚拟内存使用上节省很多。