springboot 项目实现集群,用nginx 作为负载均衡

java 的springboot 项目实现集群,用nginx 作为负载均衡,但是有一个问题,就是我的项目需要和固定文件夹下的文件进行交互,还有就是我的项目里面有一个逻辑是下载数据到对应的文件夹下。项目里面有这些逻辑,和外部文件夹进行交互,那么项目是不是就不能搭建集群了,如果我想要搭建集群,这种情况咋搭建

文件上OSS或者文件服务器

我们之前项目中,这种情况是挂载NAS盘,两个服务器同时用同一块硬盘,这种是本地的方案。
还可以考虑使用对象存储,比如阿里oss,AWS s3 等等

参考GPT和自己的思路:

感谢您的提问。关于您问的问题,我可以给出以下建议:

  1. 首先,您可以考虑使用分布式文件系统来存储您的文件,并且确保所有集群节点都可以访问该文件系统。这样,您的项目就可以在集群模式下运行,并且能够与外部的文件夹进行交互。

  2. 另外,如果您不想采用分布式文件系统的方案,可以考虑将文件存储在共享文件夹中,然后确保所有集群节点都可以访问该共享文件夹。然后,在您的项目中,您可以使用类似于NFS或Samba等工具来访问此共享文件夹。

  3. 对于下载文件到指定文件夹的逻辑,您可以在所有节点上都创建相同的文件夹,然后确保您的负载均衡器将请求发送到空闲的节点上。然后,您可以在这些节点上使用相同的文件系统路径来下载文件,并将它们保存在相同的位置。

希望我的答复能够帮助您解决问题。如果您有任何其他问题或者需要更详细的解决方案,请随时联系我。

  1. 如果文件是用户上传的,并且需要持久化,那么将文件存储位置替换为远程地址或共享地址,比如OSS、文件服务器、NAS方案、甚至把文件写到数据库(文件数很少并且不大的情况)等
  2. 如果文件夹的数据是从固定远程地址下载下来的,这种情况完全不会影响集群————每次先判断文件夹下有没有文件,没有就去下载,每个实例上都会有这个文件