【发布时间】:2011-12-13 23:12:38
【问题描述】:
我有一个文件上传站点,该站点当前位于单个服务器上,即使用同一台服务器供用户将文件上传到同一台服务器,并使用同一台服务器进行内容交付。
我想要实现的是 CDN (content delivery network)。我想购买一个服务器场,如果我有一种机制可以让文件分布在不同的服务器上,那将更好地平衡我的负载。
但是,我对此有几个问题:
假设我的服务器场由 10 台用于内容交付的服务器组成,
由于在用户端,上传文件的脚本只有一个位置,即
<form action=upload.php>,它必须驻留在单个服务器上,对吗?如何跨多台服务器复制脚本,将用户的文件上传数据定向到负载最小的服务器?我应该如何确定将哪些文件发送到哪个服务器?在上传过程中,我应该将所有文件随机化到随机服务器吗?如果用户发送 10 个文件,我应该将它们发送到随机服务器吗?是否有一种机制可以将它们发送到负载最少的服务器?有没有其他算法可以帮助确定文件需要发送到哪个服务器?
文件将如何从上传服务器发送到 CDN?使用 FTP?这不会带来额外的开销和需要错误检查功能来检查 FTP 连接中断,以及检查文件是否成功传输等?
【问题讨论】:
-
我看到你接受了我的回答。这是否意味着您的 CDN 正常工作?我很想知道你最终做了什么。
标签: php file-upload cloud distributed cdn