海量文件上传存储解决方案

来源:互联网 发布:用友软件软件财务软件 编辑:程序博客网 时间:2024/06/14 19:17

作为一个海量文件上传存储解决方案需要如下要求

1、高扩展性(容易添加服务器)。

2、易用性。

3、高可靠性。

4、灵活性,维护成本低。

解决方案或许有很多种,如下是一种解决方案



其中两个服务(例如:WebService,WebAP)用来进行文件上传的读写分离,一个服务器集群,两张服务器和文件信息表。

当客户端要上传文件到达存储服务时,服务通过查找【文件服务器状态表】读取服务器的状态,将正常运行的服务器进行随机选择。写入文件然后将文件存储的信息写入到【文件信息表】,最后返回信息到客户端。

当客户端要下载文件时,获取文件服务通过查找【文件信息表】,然后读取该文件存储到了哪台服务器,然后再通过【文件服务器状态表】找到服务器进行读取文件,最后下载到客户端。


在这个解决方案中,如果要保证稳定性还需要对服务器存储的文件进行备份处理,可以写一个服务进行文件备份,这个要根据实际情况来操作。然后读写服务做压力分流,可以通过操作系统来进行服务集群部署。

其中涉及到一个跨域服务器操作文件

1、共享文件夹,服务比较简单,直接用IO流写入就行,只是路径改变问题。为了保证安全需要将服务器集群加入一个域(域控)。

2、在集群服务器上写一个服务,用Socket(TCP)来存储文件。

3、FTP实现存储。