有效地将文件上传到CDN

时间:2012-02-22 15:58:09

标签: php file-upload cron cdn

我正在使用Rackspace的CDN来托管我所有网站的媒体(图片和视频)。每次用户上传内容时,我都会使用以下过程:

  1. Uploadify将文件上传发送到PHP方法
  2. PHP方法散列文件名,将文件上传到tmp目录,创建缩略图版本(如有必要),并返回散列文件名和缩略图名称
  3. jQuery用于将预览图像src替换为:/location/to/tmp/file_name,并将file_name也存储在隐藏输入中。
  4. 提交表单时,隐藏输入的$ _POST值用于将文件上传到CDN,并将CDN位置存储在关系MySQL表中
  5. 这一切都很好 - 一切正常。

    但是我最近一直想知道这是否是最有效的方法 - 因为,目前,脚本正在将文件上传到处理文件的方法中间的CDN。有时表单最多会有10-12个图像(大约1MB以上),因此在处理函数中间需要进行大量的数据传输 - 我担心它会不必要地减慢速度。它可以在我的本地主机上,在共享主机上进行暂存,我相信当我们在生产VPS上推出它时没问题,但我仍然想让事情尽可能正确。

    我应该将所有CDN上传到cronjob,还是我现在正在使用的方法好吗?

1 个答案:

答案 0 :(得分:0)

很可能取决于Rackspace CDN上强制执行的限制(如果有的话) - 以及您上传的并发用户数量。

如果他们有限制并且你可能接近在生产环境中达到它 - 那么为CDN上传实现某种排队服务器会更安全。