java - NFS 共享文件访问问题

标签 java linux amazon-web-services nfs

我们在 AWS 上运行我们的测试环境,我们在所有服务器上使用 NFS(EBS 文件系统)挂载来访问我们的文件。多个 java 进程访问此文件系统上的文件。应用程序服务器使用在其他系统上运行的不同消费者来处理文件。一个这样的消费者将或文件转换为图像,但问题是应用程序服务器无法访问这些文件(file.exist() 为 false)。现在奇怪的是,它无法访问文件页面的第一张图片(有几页的文件),但可以访问第二页,依此类推。很多时候我观察到,奇数页图像无法访问,但我可以看到图像存在于那里。所以,我认为图像转换过程仍在访问图像,而应用程序服务器试图访问它,但同样的问题并没有出现在偶数页图像上。这些图像位于嵌套文件夹中,因此转换过程还会创建文件夹结构,然后将它们写入这些文件夹。知道这里可能是什么问题吗?有人在 AWS 上遇到 NFS 共享问题吗?

最佳答案

这取决于您的应用程序的预期行为

NFS 非常适合只读系统或对及时更新数据要求不高的程序

有关详细信息,请参阅此问题 Alternative to File.exists() in Java

您可能想考虑 NFS 的替代方案,例如 AWS EFS 或开源 Gluster

关于java - NFS 共享文件访问问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39465067/

相关文章:

java - 从 Java 服务器向 Android 推送数据

linux - 在 linux 目录的所有文件中搜索和替换文本

linux - 如果我的交换使用率为 100%,我应该担心吗?

linux - 目标有一个依赖项,该依赖项本身不是目标

amazon-web-services - 从 apigateway 迁移到 apigatewayv2

java - 如何分离二维数组中的不同值

java - 为什么这段代码在 netbeans 中抛出 ClassCastException 而在 eclipse 中运行良好

java - OpenGL 旋转和物体移动

amazon-web-services - 在ElasticSearch中以任何方式会自动增加集群大小吗?

amazon-web-services - AWS Amplify 在 Spring Boot 后端为 https 使用 ssl 证书