使用CDN存储/提供用户图像上传?

Ada*_*son 6 cloud cdn image-processing slicehost mosso

我仍然是整个CDN思想的新手,所以这可能是一个愚蠢的问题,但我相信有人可以对此有所了解.我有一个基本的PHP脚本,用于上传用户图像,调整大小,创建目录($user_id),并将完成的产品存储在目录中(如www.mysite.com/uploads/$user_id/image1.jpg).奇迹般有效.

我刚刚把所有主机东西都拿走了,我正在使用Rackspace(Slicehost?)"云服务器"架构.我还注册了Rackspace(Mosso?)"云文件".到现在为止还挺好.

所以我的问题是:我应该存储用户在本地(在我的apache服务器上)上传的图像还是通过云文件存储的对象?将静态内容与我的Web服务器分开似乎是一个好主意,因此我可以使用它来生成动态内容.但是,每次用户上传图像时,创建启用CDN的容器会产生大量开销吗?

希望我完全不会错过这艘船.我似乎无法找到关于此的大量信息,但我确信我有充分的理由要么追求或避免这个想法.任何建议都非常感谢!

Ric*_*oll 13

我不熟悉Rackspace的产品,但使用CDN进行静态内容的一般逻辑是实现两个目标:

  1. 卸载带宽和处理到其他服务器,释放你的.
  2. 将请求移至客户端
  3. 将大型静态内容移近客户端

当您将生成的HTML发送到浏览器时,它会将图像"看到"为例如www.yourdomain.com/my_image.jpg,并对每条静态内容执行其他请求,可能会使服务器的线程无法满足服务请求.如果您将所有这些内容移动到CDN上,浏览器会看到类似cdn.yourdomain.com的内容,浏览器将从CDN请求图像,从而允许您的服务器为其他请求提供服务.此外,大多数CDN会将您的内容分发到多个位置,并为从最近的位置提供内容的请求提供地理路由,从而改善客户端的感知加载时间.