【问题标题】:JDK 7 WatchService API and NFS file sharingJDK 7 WatchService API 和 NFS 文件共享
【发布时间】:2012-07-24 10:07:23
【问题描述】:

我们正在使用[WatchService][1] API (JDK 7) 来跟踪在我的系统中创建的文件。到目前为止,它工作正常。我的程序跟踪在我的系统上创建的每个文件。

但是我们在使用NFS的时候会遇到麻烦(我们跟踪的目录实际上存在于局域网中的另一台计算机上)。

WatchService 不起作用。

谁能告诉我如何解决这种情况?如何设置 NFS 以支持 Java 7 WatchService API,或者谁能告诉我一个更好的库。

谢谢大家

【问题讨论】:

  • NFS 其实问题很大。这同样适用于 NFS 挂载上的 Lucene 索引。你可能在这里不走运。
  • 底层文件系统不支持。 stackoverflow.com/a/4231277/184998 有没有办法强制 Watch Service 退回到轮询更改?
  • 我的建议是永远不要设计或编写依赖于共享文件系统的应用程序。这些是给用户的,不是代码的。故障模式有太多需要处理的问题,正如@Michael-O 所说,NFS 是其中最成问题的一种。

标签: java filesystems java-io nfs filesystemwatcher


【解决方案1】:

您可以将您的代码与来自 OpenJDK(波兰文)的Polling Watcher 混合使用

Sources

【讨论】:

  • 黑客是真实的:)
  • 不建议在openjdk.sun.nio.fs 包下创建类。
猜你喜欢
  • 2012-05-09
  • 1970-01-01
  • 2011-01-15
  • 2017-01-20
  • 2023-04-09
  • 1970-01-01
  • 1970-01-01
  • 2014-02-07
  • 1970-01-01
相关资源
最近更新 更多