我手上有 3 台 Windows XP 文件服务器(它们的唯一用途是 SMB 共享),运行在一个大约有 50 名用户的办公室中。工作量仅限于办公室使用:他们使用它来存储和共享 Access 数据库和 XLS 文件,并通过网络共享使用这些文件。
将 700 Kb 大小的 XLS 文件从一台服务器复制到工作站几乎是瞬间完成的,但从 Excel 的远程共享中加载它却需要一分钟以上的时间。如果从本地磁盘加载,则只需几秒钟。
我不知道是什么导致通过网络访问文件时速度如此之慢,我怀疑这是 Windows 远程文件访问的一些怪癖(可能是身份验证?),我希望能够更改服务器上的一些简单标志,以将速度加快到合理的速度。我在加载上述 XLS 文件时截取了网络使用情况的屏幕截图,您能识别出这种模式并可能给我一些线索,告诉我问题是什么吗?
在第一张图片中,Excel 加载远程文件运行了两次,两次都花了一分钟多的时间。顶部和底部的图表来自同一个项目,但我后来才发现任务管理器选项可以区分上传(红色)和下载(黄色),所以我截取了 2 张不同的屏幕截图(连接如下)。两次运行都花了一分钟多的时间,可能超过 2 分钟。
第二张图片是第 3 次和第 4 次运行。这次它们比第一次运行快得多,但仍然太慢,无法忍受。两次运行都花费了 1 分钟以上,但在第 4 次运行中,我突然想到要正确测量时间,结果发现它花费了 1 分 42 秒。这是其中最快的一次。这次我只截取了一张截图,即经过区分的版本。
我在所有运行中注意到的都是初始峰值,在开始运行后约 8 秒,然后网络使用率降至非常低,然后,几秒钟后,出现另一个峰值,即最集中的活动,然后很长时间几乎没有活动,最后 Excel 显示文件。当显示文件时,还有另一个峰值开始,并持续几秒钟。运行开始和结束之间的偏移以及图表中的活动似乎是由任务管理器显示数据的延迟引起的。我不知道文件何时真正下载。我也无法解释为什么绿色图表在峰值之间显示小的活动,而红色/黄色图表没有显示任何活动。但最有趣的是第二个和第三个峰值之间长达一分钟的停顿,当时我完全不知道发生了什么,而且肯定会更快。
有 Windows 网络经验的人能否提供一些专家意见,说明此设置存在什么问题(除了十年前的操作系统)?您能识别这些图形模式吗?能解释一下吗?对如何提高性能有什么提示吗?
答案1
如果“缓慢”仅发生在 Excel 中,我可能会仔细查看 XML 文件,并确保 Excel 中的解释器在解析 XML 时没有遇到问题。可能是格式错误或读取时遇到问题。尝试在其他应用程序(如记事本等)中打开文件,看看是否仍然存在缓慢问题。FWIW,XP 不是一个与那么多(50)用户共享文件的好平台,因为它限制为 10 个客户端连接。您可能会遇到与其他尝试读取 XML 文件的客户端的一些争用问题。我不认为您的问题在于文件的大小,而是 Excel 在打开文件后对文件做了什么。但这只是我的想法。尝试执行 CSV 文件转储并在 Excel 中打开它,看看需要多长时间。