File.listFiles()
Win 7 クライアントから SAMBA フォルダーを介してJava を呼び出すと非常に遅く、実際には Mac クライアントからの呼び出しよりもほぼ 100 倍遅いことがわかりました。(どちらのクライアントも Java 7 を実行しています)。両方のクライアントは当然、同じ 1GB LAN 上にあります。ある顧客が Win XP クライアントでテストしたところ、Win7 クライアントよりもはるかに優れたパフォーマンスが得られました。これを解決する方法を知っている人はいますか?
タイミングを含むいくつかのテスト データ: SAMBA (「QNAP」NAS ディスク) 上の 31 のフォルダーの一覧表示:
勝つ 7:
リスティング \\nas\Public\David\Remote 株式: 0.0s \\nas\Public\David\Remote Stocks\Animals のリスト: 0.093 秒 リスト \\nas\Public\David\Remote Stocks\Animals\.jalbum: 0.312s \\nas\Public\David\Remote Stocks\Animals\.jalbum\thumbs のリスト: 0.405 秒 リスト \\nas\Public\David\Remote Stocks\album: 1.248s \\nas\Public\David\Remote Stocks\album\Animals のリスト: 1.31 秒 \\nas\Public\David\Remote Stocks\album\Animals\thumbs のリスト: 1.388 秒 \\nas\Public\David\Remote Stocks\album\Animals\slides のリスト: 1.762 秒 リスト \\nas\Public\David\Remote Stocks\album\Animals\res: 2.542s リスト \\nas\Public\David\Remote Stocks\album\Sports: 2.761s \\nas\Public\David\Remote Stocks\album\Sports\thumbs のリスト: 2.839 秒 \\nas\Public\David\Remote Stocks\album\Sports\slides のリスト: 3.229 秒 リスト \\nas\Public\David\Remote Stocks\album\Sports\res: 3.978s リスト \\nas\Public\David\Remote Stocks\album\res: 4.196s \\nas\Public\David\Remote Stocks\album\Scenic のリスト: 4.695 秒 \\nas\Public\David\Remote Stocks\album\Scenic\thumbs のリスト: 4.773 秒 \\nas\Public\David\Remote Stocks\album\Scenic\slides のリスト: 5.194 秒 \\nas\Public\David\Remote Stocks\album\Scenic\res のリスト: 5.99 秒 リスト \\nas\Public\David\Remote Stocks\album\People: 6.208s リスト \\nas\Public\David\Remote Stocks\album\People\thumbs: 6.302s \\nas\Public\David\Remote Stocks\album\People\slides のリスト: 6.692 秒 リスト \\nas\Public\David\Remote Stocks\album\People\res: 7.472s リスト \\nas\Public\David\Remote Stocks\.jalbum: 7.659s リスト \\nas\Public\David\Remote Stocks\Sports: 7.768s リスト \\nas\Public\David\Remote Stocks\Sports\.jalbum: 7.909s リスト \\nas\Public\David\Remote Stocks\Sports\.jalbum\thumbs: 7.987s \\nas\Public\David\Remote Stocks\Scenic のリスト: 8.486 秒 リスト \\nas\Public\David\Remote Stocks\Scenic\.jalbum: 8.642s \\nas\Public\David\Remote Stocks\Scenic\.jalbum\thumbs のリスト: 8.72 秒 リスト \\nas\Public\David\Remote Stocks\People: 9.282s リスト \\nas\Public\David\Remote Stocks\People\.jalbum: 9.422s
Mac での同じリスト:
リスト /Volumes/Public/David/Remote Stocks: 0.0s リスト /Volumes/Public/David/Remote Stocks/Animals: 0.013s リスト /Volumes/Public/David/Remote Stocks/Animals/.jalbum: 0.018s リスト /Volumes/Public/David/Remote Stocks/Animals/.jalbum/thumbs: 0.022s リスト /Volumes/Public/David/Remote Stocks/album: 0.027s リスト /Volumes/Public/David/Remote Stocks/album/Animals: 0.03s リスト /Volumes/Public/David/Remote Stocks/album/Animals/thumbs: 0.032s リスト /Volumes/Public/David/Remote Stocks/album/Animals/slides: 0.034s リスト /Volumes/Public/David/Remote Stocks/album/Animals/res: 0.038s リスト /Volumes/Public/David/Remote Stocks/album/Sports: 0.04s リスト /Volumes/Public/David/Remote Stocks/album/Sports/thumbs: 0.042s リスト /Volumes/Public/David/Remote Stocks/album/Sports/slides: 0.046s リスト /Volumes/Public/David/Remote Stocks/album/Sports/res: 0.05s リスト /Volumes/Public/David/Remote Stocks/album/res: 0.052s リスト /Volumes/Public/David/Remote Stocks/album/Scenic: 0.058s リスト /Volumes/Public/David/Remote Stocks/album/Scenic/thumbs: 0.064s リスト /Volumes/Public/David/Remote Stocks/album/Scenic/slides: 0.068s リスト /Volumes/Public/David/Remote Stocks/album/Scenic/res: 0.074s リスト /Volumes/Public/David/Remote Stocks/album/People: 0.08s リスト /Volumes/Public/David/Remote Stocks/album/People/thumbs: 0.082s リスト /Volumes/Public/David/Remote Stocks/album/People/slides: 0.085s リスト /Volumes/Public/David/Remote Stocks/album/People/res: 0.089s リスト /Volumes/Public/David/Remote Stocks/.jalbum: 0.091s リスト/ボリューム/パブリック/デビッド/リモート株式/スポーツ: 0.103 秒 リスト /Volumes/Public/David/Remote Stocks/Sports/.jalbum: 0.106s リスト /Volumes/Public/David/Remote Stocks/Sports/.jalbum/thumbs: 0.108s リスト/ボリューム/パブリック/デビッド/リモート ストック/シーニック: 0.11 秒 リスト /Volumes/Public/David/Remote Stocks/Scenic/.jalbum: 0.122s リスト /Volumes/Public/David/Remote Stocks/Scenic/.jalbum/thumbs: 0.124s リスト/ボリューム/パブリック/デビッド/リモート株式/人: 0.126s リスト /Volumes/Public/David/Remote Stocks/People/.jalbum: 0.133s
最後に、ネットワーク ラグの影響を克服するために、Windows でマルチスレッド リストを実行しようとしました。9 秒から 3 秒、つまり 3 倍速くなりましたが、MacBook Pro クライアントで測定した 0.133 秒よりもパフォーマンスが大幅に低下しました。