如何处理大型文件上传

时间:2011-11-13 15:23:56

标签: java architecture file-upload

我想创建一个简单的文件上传服务器。服务器应该能够处理每个10 GB大小的文件和大约10,000个文件。

我想知道什么是最好的架构 - 使用文件系统或数据库? 我必须使用RAID吗?有没有办法免费实现这个要求?

我有哪些最便宜的选择?

1 个答案:

答案 0 :(得分:0)

  • “文件系统或数据库”

您需要一个包含文件列表的数据库,以及一个实际存储文件的文件系统。

  • “我必须使用RAID吗?”

基本上没有。 RAID是设置硬盘驱动器的各种模式的集合,用于速度和可靠性,代价是额外驱动器的额外成本。如果您希望拥有一个可以容纳100TB的服务器,那么将这些驱动器条带化在一起形成一个非常大的逻辑磁盘而不是许多小型驱动器,并使用奇偶校验驱动器来保证数据安全性是值得的。 RAID是主板上的内置控制器,或者,如果您想使用几十个硬盘,您将需要一个特殊的电源和专用的RAID控制器。在这一点上,考虑在云中租用存储空间会更具成本效益,虽然我不会要求一百TB,但我会尝试随着你的成长而扩展。

  • “有没有办法免费实施这项要求?”

没有。 Raid控制器非常昂贵(8端口至少300美元),任何体面的硬盘都可以满足您的要求。您可以从4磁盘设置开始,使用主板的内置RAID工具(可在许多高端主板上使用),当时机成熟时,请转向使用更大的RAID卡。

了解云存储。它总体上要花费很少,特别是包括两个尚未提出的点:功耗和网络连接的成本。