【问题标题】:How do I design the file storage issue?如何设计文件存储问题?
【发布时间】:2011-01-12 05:21:43
【问题描述】:

我正在开发一个创建视频文件并将它们存储在 C:\ 驱动器中的文件夹中的应用程序。我推测将来会有大量这些文件,我们会在某个时间点(在我们的 VPS 上)耗尽磁盘空间。当我们必须升级时,我们要么计划使用其中一个云提供商来存储文件,要么我们现有的提供商可以添加另一个磁盘(比如 D:\ 驱动器)。

无论哪种方式,我现在都希望以这样一种方式设计应用程序,以便将来移动到不同的位置不会成为问题,并且对最终用户是透明的。

创建这些文件的代码支持两种方式:

myObj.SetOutputToDisk(<path to store>); or
myObj.SetOutputToMemoryStream(ms);

如果我们采用云架构,我假设我们可能有以下组合:

  • 云文件 + 现有 VPS 或
  • 云文件 + 云 Windows 服务器

鉴于目前的未知数,我将如何设计这个?

【问题讨论】:

    标签: asp.net cloud cloud-hosting


    【解决方案1】:

    您可能希望将Managed Extensibility Framework 视为一种为您的应用添加新存储方法的扩展而不需要重新构建整个东西的方式。

    您需要某种方式来记录使用的存储位置和方法,我希望您以后可以根据需要迁移到某种数据库存储。

    您的问题非常模糊,您自己没有投入太多精力,因此您不太可能在答案中获得您希望的详细程度。至少尝试实施该系统,然后针对您遇到的问题提出具体问题。

    【讨论】:

    • 对不起,我不清楚。这主要是因为我不知道这个应用程序的未来会怎样。现在,它的工作方式是,我在 C:\MyApp 有一个应用程序根目录,文件存储在 C:\MyApp\Files\\file
    【解决方案2】:

    从子域提供文件。说:media.yourdomain.com

    这样,您可以在未来的某个时间轻松地将 DNS 记录重新指向新的存储提供商。

    另外,我建议将媒体文件存储在另一个物理磁盘上到 OS 磁盘。所以有一个 D:\ 驱动器并将媒体存储在那里。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-10
      • 2017-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多