在Windows上使用映射的网络驱动器时,改善java文件i/o性能。

时间:2023-01-26 22:02:01

We've created a java application that (among other things) uses the built-in file IO libraries to access a list of files inside a particular folder on a network share. When the folder is specified as a local file (e.g., c:\foobar), performance is fine. However, if we map a network drive to the folder, even if the folder is on the same machine (e.g., z:\ -> c:\foobar), performance goes through the floor. Any ideas on what might be causing the problem? More importantly, any suggestions on how to improve the situation?

我们创建了一个java应用程序,使用内置的文件IO库访问网络共享上特定文件夹中的文件列表。当文件夹被指定为一个本地文件(例如c:\foobar)时,性能很好。但是,如果我们将网络驱动器映射到文件夹中,即使文件夹在同一台机器上(例如,z:\ -> c:\foobar),性能也会影响整个系统。你知道是什么导致了这个问题吗?更重要的是,对于如何改善现状有什么建议吗?

1 个解决方案

#1


1  

You haven't said which version of windows you're using but it's well-acknowledged that early versions of SMB have performance issues. In a nutshell: later (e.g. Windows Server 2012) = better when it comes to performance, although you need to ensure that both the client and server are working on the latest version of SMB for maximum performance.

您还没有说您使用的是哪个版本的windows,但是大家都知道SMB的早期版本存在性能问题。简而言之:稍后(例如Windows Server 2012) =在性能方面更好,尽管您需要确保客户端和服务器都在开发SMB的最新版本,以获得最大的性能。

#1


1  

You haven't said which version of windows you're using but it's well-acknowledged that early versions of SMB have performance issues. In a nutshell: later (e.g. Windows Server 2012) = better when it comes to performance, although you need to ensure that both the client and server are working on the latest version of SMB for maximum performance.

您还没有说您使用的是哪个版本的windows,但是大家都知道SMB的早期版本存在性能问题。简而言之:稍后(例如Windows Server 2012) =在性能方面更好,尽管您需要确保客户端和服务器都在开发SMB的最新版本,以获得最大的性能。