Java:多个JVM之间的单个文件处理

时间:2018-03-21 12:11:49

标签: java file synchronization multiple-instances

我有一个Spring批处理应用程序,它部署在多个服务器(多个JVM)上。所有实例都监听输入文件的公共共享路径。

如何确保保存在共享位置的输入文件只会被一个实例使用?

1 个答案:

答案 0 :(得分:-2)

可以使用db RUNNING,NOT_RUNNING中的枚举状态来维护。当线程1开始处理文件时,它将获取调度程序状态实体并检查调度程序状态。如果它没有运行,则将状态更新为RUNNING并执行该文件夹,完成后将其标记为NOT_RUNNING。应该在单一环境和同步方式下执行此代码。可以使用所有批次的RMI调用来调用它以获取该位置的锁定。