2015-11-25 55 views
2

我们正在研究一个JavaEE应用程序,用户可以将图像,视频(通常是一个zip包含大量小文件)上传到服务器,通常我们会将文件(文件)保存到某些本地目录,然后用户可以访问它们。java中的轻量级分布式文件系统实现

但是,一旦应用程序部署在负载平衡所在的多个服务器上,情况就会变得复杂。假设有两个服务器Server1Server2,并且一个用户尝试上传一些文件,并且这个请求被调度到Server2,这里没有错。然后,另一个用户尝试访问该文件,并将其请求分派到Server1,然后应用程序找不到该文件。

听起来像我需要一个分布式文件系统,而我只需要几个特点:

1)Nodes can detect each other by themselves. 
2)read and write file/directory 
3)unzip archive 
4)automatically distributes data based on the available space of nodes 

HDFS是太大了,我的申请,我并不需要处理的数据,我只在乎存储。

是否有一个基于Java的轻量级替代解决方案可嵌入到我的应用程序中?

+0

有多个服务器的原因是什么?是关于负载平衡还是透明故障转移? – meriton

+0

负载均衡是最重要的一点。 – hguser

回答

1

我可能会在操作系统级别使用共享network attached storage解决此问题。 (如果您没有可用的专用NAS,则可以通过使用NFS共享相关目录将应用程序服务器充当NAS)。