将文件存储在部署了应用程序的实例HDD上

时间:2017-08-13 11:07:51

标签: web-applications io architecture dfs

我正在设计一个应用程序,它根据内容获取文件并拆分/合并它们并将其推送到其他系统。一旦处理完毕,根本不需要那些文件。因此,我计划将文件存储在部署了应用程序而不是任何分布式/网络文件系统的HDD上。

为什么我没有像我的场景那样选择网络文件系统我需要处理像1GB这样的大文件,而我正在使用JSON流来处理这些文件。有时我需要使用RandomAccessFile机制来分割我的内容。如果它发生在网络文件系统上,处理时间可能会很长。

我考虑过使用本地文件系统扩展应用程序,可以毫不费力地扩展应用程序,因为目标系统期望从他们推送文件的同一系统处理数据。

请提供您对此的看法?我想检查一下我是在正确的道路上

1 个答案:

答案 0 :(得分:0)

我将提供这种方法的一些缺点:

  • 本地硬盘通常没有冗余(例如RAID 5/0) - 并且更可能发生故障(取决于您的云/硬件提供商)
  • 本地硬盘通常基于劣质硬件(与SAN / NAS相比) - 并且可能更慢。
    • 快速/慢速HDD之间的主要区别通常是随机访问。对于顺序访问(你提到主要使用大文件?) - 效果可以小得多。
  • 如果实例失败,通常会在云提供商上删除本地HDD数据。因此,再次存在丢失数据的风险。

回顾:如果符合您的弹性和性能要求 - 我不会发现此方法存在问题。