在群集tomcat,数据库或文件系统中上载映像

时间:2014-02-01 07:44:25

标签: java tomcat

我需要使用群集tomcats上传Images Java Web项目。 我面临的问题是在文件系统或数据库上上传图像的天气。 由于文件系统存在完整性问题(跨群集节点的图像不一致),但性能更快。

通过混合方法获得了在两个节点之间同步文件的解决方案。 通过将文件的Rest文件转换为基本64字符串并将其作为XML发布到单独线程中的集群中的其他节点,实现每个节点之间的即时同步。 因此,当设计失败时会出现许多情况。 (其中一个是一个节点在另一个节点上传时发生故障。)。然后提出了将数据库保留为主副本的解决方案,以便在服务器启动时进行同步,并在其他时间使用辅助存储。

仍然是解决方案似乎过于复杂,因此我们采用Andrey Chaschevvenergiac建议的 共享安装驱动器 。它就像一个魅力。猜测这个RnD的唯一加分点是我非常熟悉Rest可以做什么和不能做什么以及Jgroups在群集感知tomcats之间进行消息传递。

2 个答案:

答案 0 :(得分:2)

分布式文件系统可能就是您所需要的。在我以前的一个项目中,我使用GlusterFS并且体验非常顺利 - DFS被视为一个文件夹,在任何主机可以写入或读取的主机之间共享。它承诺具有容错能力。谷歌搜索现代解决方案给出了XtreemFS

从我读到的关于DFS vs FS vs NFS的内容来看,DFS比NFS更快更容易配置,并且比通过网络直接复制文件慢一点。

答案 1 :(得分:1)

首先,

我将文件保存在数据库(Oracle)上;

但是,您可以在群集节点(NFS或CIFS)之间使用共享目录。

相关问题