修復 SharePoint 目錄列表緩慢 — NetDrive

閱讀時間 6 分鐘 troubleshooting sharepoint performance
Robin
RobinDeveloper Advocate
診斷並修復 NetDrive 掛載大型 SharePoint 文件庫時目錄列表緩慢的問題,涵蓋非同步列表、快取大小與文件庫結構。

某行銷團隊透過 NetDrive 掛載了一個共用的 SharePoint 文件庫,讓整個團隊都能像操作一般磁碟機一樣把檔案拖進去。這個文件庫已成長到超過 20,000 個檔案、分布在十幾個活動資料夾中,而在總管中開啟最上層資料夾時,現在要盯著轉圈圖示好幾秒才會有東西顯示出來。這並非故障——只是文件庫大到讓 NetDrive 必須真正花時間去列舉它。

NetDrive drive manager showing Google Drive, S3 and pCloud mounted as drive lettersMounted clouds appearing as native drives in Windows File Explorer

掛載 SharePoint,無需苦等

NetDrive 讓 Google Drive、OneDrive、S3、SFTP、WebDAV 等在 Windows 與 macOS 上顯示為原生磁碟機 — 不需同步,也不需完整下載。

  • 針對大型文件庫的非同步目錄列表
  • 可設定的目錄快取,最高可達 1 TB
  • 當上游檔案變更時,可對單一資料夾強制重新整理
WindowsmacOS
下載 NetDrive →

免費試用。提供終身與訂閱方案。

為什麼大型 SharePoint 文件庫列表速度慢

SharePoint 不會像本機檔案系統那樣,一次回應就把資料夾內容交給 NetDrive——它是透過 SharePoint 的 API 來列舉文件庫,而一個有數千個項目的文件庫,走完這個流程需要真正的時間與多次來回請求。在 NetDrive 3.17.799(2022-11-25)之前,這項列舉是同步執行的:資料夾檢視畫面會等到完整列表取得後才顯示任何內容。3.17.799 版特別針對 SharePoint 導入了非同步列表功能來解決這個問題,讓資料夾可以在項目陸續抵達時就開始渲染,而不必等整批資料都到齊才動作。

在同一段時期的更新中,NetDrive 呈現 SharePoint 中繼資料的方式也有所改善——SharePoint 磁碟機的配額顯示功能在 3.16.667(2022-06-30)登場,正好是非同步列表推出的前一個版本。如果你的團隊是在較舊的 NetDrive 版本上掛載 SharePoint、且從未更新過,大型文件庫列表緩慢正是預期中的現象,而不是設定錯誤。

SharePoint provider logo — NetDrive supports SharePoint document libraries on Windows and macOS

確認你使用的版本是否支援非同步列表

  1. 開啟 NetDrive 的 Drive Manager,在關於面板(或說明選單)中查看版本號。
  2. 將其與 3.17.799 比對——任何更舊的版本都不支援非同步 SharePoint 列表。目前的正式版本是 3.19.7。
  3. 若你的版本較舊,請從 netdrive.net/download 下載最新安裝程式並重新安裝;SharePoint 連線與認證資訊會被保留。

NetDrive Drive Manager showing connected cloud drives including a SharePoint connection

給目錄快取更多空間

一旦某個資料夾被列出過,NetDrive 就會在本機快取該列表,讓下次造訪時不必重複進行 SharePoint 的來回請求。快取大小是可設定的——最高可達 1 TB,這項設定是在 3.16.589(2022-03-31)引入的。對於一個擁有十幾個活動資料夾、數萬個檔案的文件庫來說,分配比預設值更大的快取空間會很有幫助,因為可以讓樹狀結構的更多部分在各次連線之間保持「熱快取」狀態。這項設定可在 Drive Manager 中該磁碟機的設定裡調整。

代價則是資料新鮮度的問題:如果同事直接透過瀏覽器將檔案新增到 SharePoint,NetDrive 對該資料夾的快取畫面不會顯示這些新檔案,直到快取過期或你手動重新整理為止。

Confirming that a connected SharePoint drive mounted successfully

強制重新整理單一資料夾,而非苦等快取

當你知道某個特定的活動資料夾在上游剛有變動時,並不需要等快取過期或重新啟動 NetDrive。在總管或 Finder 中對該資料夾按右鍵,使用 Force folder refresh——這是 NetDrive 自 3.8.921 起就有的功能——即可重新列舉該資料夾並更新其快取列表。

Force folder refresh menu option in NetDrive, used to re-list a single folder's contents

這麼做能把 SharePoint 的來回請求侷限在真正變動的那個資料夾,而不是整個文件庫,因此即使文件庫其他地方有數千個項目,這個修正方式仍能維持快速。

調整文件庫結構以維持列表速度

除了版本與快取設定之外,文件庫本身的組織方式也會影響任何讀取它的工具(不只是 NetDrive)的列表速度:

  • 依年度或活動拆分扁平資料夾。 單一資料夾若存放了好幾年份的資產,會迫使每次列表呼叫都要走遍整個集合。拆分成 2025/2026/ 或依活動分的子資料夾,能讓每次個別列表變小。
  • 將已完成的活動歸檔到現行資料夾之外。 把已完成的工作搬到另一個團隊很少開啟的文件庫或資料夾樹中,讓團隊每天瀏覽的資料夾保持精簡。

總結

NetDrive 中 SharePoint 列表緩慢幾乎都是版本與快取的問題,而非連線問題:確認你使用的是 3.17.799 或更新版本以取得非同步列表功能,給目錄快取足夠空間來容納文件庫的樹狀結構,並用強制資料夾重新整理來處理單次更新,而不是苦等快取過期。至於 SharePoint 連線設定本身,請參閱 Mount SharePoint on Windows with NetDriveMount SharePoint on macOS with NetDrive;若想了解相同快取機制如何套用在 S3 上,請參閱 Fix Slow S3 Directory Listing with NetDrive

— Robin, NetDrive