我们有一个ASP.NET文件传递应用程序(内部用户上传,外部用户下载),我想知道分发文件的最佳方法是什么,所以我们只有将应用程序的文件存储在一个文件上才会出现单点故障服务器.我们将应用程序的负载分布在多个前端Web服务器上,这意味着对于文件存储,我们不能简单地在Web服务器上本地存储文件.
我们当前的设置让我们指向主数据库/文件服务器上的共享.在一天中,我们将主服务器上共享的内容复制到故障转移.这个scneario确保我们有一台辅助计算机上有相当新的数据但我们希望能够从主服务器故障转移到故障转移,然后再返回,而不会丢失前端应用程序中的数据或错误.现在,这是一个相当手动的过程.
可能的方案包括:
的Robocopy.很简单,但它不容易让您在没有多个作业一直运行的情况下进行故障转移和返回(来回复制数据)
将文件存储在SQL Server 2005中的BLOB中.我认为这可能是性能问题,尤其是对于大文件.
在SQL Server 2008中使用FILESTREAM类型.我们镜像我们的数据库,所以这看起来很有希望.有人对此有经验吗?
微软的分布式文件系统.由于我们只有2台服务器需要管理,因此从我读过的东西看起来有些过分.
那么你通常如何解决这个问题,什么是最好的解决方案?