通过 Windows 文件共享访问时,需要等待很长时间才能出现文件夹

通过 Windows 文件共享访问时,需要等待很长时间才能出现文件夹

我们有一个应用程序,它在远程机器上创建一个包含文件的文件夹,还有一个 python 脚本,它使用其完整的 UNC 名称从本地机器上查找这个文件夹并做出相应的响应(例如,脚本\\remote-host\D$\our_cool_application_output_folder从本地主机上查找文件夹)。

从远程计算机上实际出现此文件夹到脚本看到它,中间会有一段相当长的延迟(大约 5 秒)。这会损害我们应用程序的性能。在延迟期间,脚本会尝试反复访问此文件夹(每秒 4 次),直到成功为止。

有什么方法可以让本地机器更快地看到远程文件夹?有没有办法将这个“更新时间”缩短到几毫秒?

答案1

无需反复检查文件,只需让 Windows 在文件到达时立即通知您即可查找第一个更改通知通过反复检查文件,您可以强制将不存在的文件放入缓存中,从而防止文件被发现。

Windows 只会如此频繁地检查,并且重定向器有一个缓存。你能做的最糟糕的事情就是在文件出现之前请求它。这确保你必须等待整个负缓存有效性间隔才能找到该文件。

你可以禁用其中一些缓存,但批量文件 I/O 的性能将受到严重影响。真的,你不应该这样使用文件。

相关内容