防止在 Java 中使用多个 FTP 客户端从 FTP 服务器获取相同的文件

Preventing fetching the same file from FTP server using multiple FTP clients in Java

我有多个 FTP 客户端,它们会定期在 FTP 服务器上查找新文件。现在,如果其中一个客户端获取文件进行进一步处理,我想将其移动到其他目录(比如已处理目录)。现在的问题是并发性,我们如何管理使得没有两个客户端同时处理同一个文件。一个文件只能由一个客户端处理。

我想不出该如何处理。在这种情况下是否可以使用任何工具,或者我应该在服务器端编写一段代码来通知我新文件到达吗?

提前致谢。

Move/rename 先看文件。这是一个只有一个客户端才能成功的原子操作。

成功的客户端可以从新的 location/name 下载文件。