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



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

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

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

最新更新