調整網頁伺服器效能 (Office SharePoint Server)

本文內容:

  • 架構

  • 調整

本文中有關實體架構及調整的建議,有助於您改善網頁伺服器的效能。

架構

本節包含 Microsoft Office SharePoint Server 2007 伺服器陣列中網頁伺服器之設定、拓撲及其他考量事項的相關資訊。

對網頁伺服器使用 64 位元伺服器

除非您有很重要的業務因素而無法這麼做,否則強烈建議您將網頁伺服器安裝在在 64 位元作業系統的 64 位元 Office SharePoint Server 2007 上。

謹慎設定 32 位元伺服器

如果您必須執行 32 位元的網頁伺服器,請遵循下列建議:

  • **請勿對 32 位元系統使用 /3gb 參數。**如果您執行 32 位元的網頁伺服器,建議您不要在 Windows Server 2003 中使用 /3gb 參數,這樣做會將所有使用者模式處理序的 2 GB 虛擬位址空間變更為 3 GB。因為大部分的 SharePoint 網站流量會透過作業系統傳送大量資料,所以不建議使用 /3gb 參數。這樣做會僅為作業系統保留 1 GB 的位址空間,而使電腦不穩定。如需詳細資訊,請參閱 Microsoft 知識庫中的下列文章:在 Windows SharePoint Services 2.0 或更新版本中或在 SharePoint Portal Server 2003 SP2 或更新版本中,不支援 Windows Server 2003 / 3GB 參數 (https://go.microsoft.com/fwlink/?linkid=105919&clcid=0x404) (機器翻譯)。

  • **混合 32 位元與 64 位元的伺服器會影響負載平衡。**您可以執行一個環境,其中有部分網頁伺服器執行 32 位元版本的 Office SharePoint Server 2007,而其他網頁伺服器則執行 64 位元版本。但是,如果網路負載平衡器設定為使用較不聰明的模型 (例如循環配置資源),32 位元網頁伺服器可能會有超載的風險。建議您將負載平衡器設定為根據負載來管理分配。

    此外,同時部署 32 位元及 64 位元的伺服器也會增加伺服器陣列的維護負擔。這是因為這兩種架構的協力廠商應用程式、自訂解決方案、修補程式及軟體更新必須分別予以追蹤及管理。

請勿使用網頁處理序區

網頁處理序區是由多個工作者處理序支援的網際網路資訊服務 (IIS) 應用程式集區。企業內容管理網站不建議使用網頁處理序區。這是因為網頁處理序區對頁面輸出快取有負面影響。

考慮對具有許多使用中工作流程的系統新增資源

在具有許多使用中工作流程執行個體的系統中,考慮為執行 SQL Server 2005 的電腦增加更多 RAM、更多網頁伺服器,以及更多資源。

為不向使用者公開的服務使用專用的網頁伺服器

專用網頁伺服器是指不連接到公開給使用者之負載平衡器的網頁伺服器。建議您使用專用網頁伺服器,執行任何昂貴服務,例如:

  • 搜尋索引

  • 管理中心

  • 設定檔

  • Excel Services

僅開啟您需要的功能

Office SharePoint Server 2007 提供許多功能。如果您僅開啟與使用者相關的功能,將能更有效率地使用資源。如需關閉功能的相關資訊,請參閱使用功能 (英文) (https://go.microsoft.com/fwlink/?linkid=105337&clcid=0x404)。

對使用密集的伺服器陣列使用 Kerberos 驗證

在能滿足其他業務需求的情況下,於指定時間單位內服務大量要求的伺服器陣列中,建議使用 Kerberos 驗證。Kerberos 驗證因為使用快取,所以能快速傳回驗證要求結果。

注意

當您在 Windows Server 2003 的網域成員上執行使用大量資源的伺服器應用程式時,使用者驗證程序可能會發生延遲。如需詳細資訊,請參閱知識庫文章 906736:在 Windows 2000 或 Windows Server 2003 的網域成員上執行高容量伺服器程式時,使用者驗證程序發生延遲 (https://support.microsoft.com/default.aspx?scid=kb;zh-tw;906736) (機器翻譯)。

調整

本節包含最佳化現有 Office SharePoint Server 2007 伺服器陣列之設定、使用者訓練、維護及其他建議的相關資訊。

監視 SQL Server 效能

監視效能與容量最好是由下到上,因為資料庫伺服器的負荷很可能造成網頁伺服器的負荷。例如,若執行 SQL Server 的伺服器在回應網頁伺服器的要求時,明顯耗用較多的時間,但網頁伺服器是依一般速度在接收使用者的要求,則網頁伺服器上的要求就會排入佇列。此行為最終會造成網頁伺服器效能低落,禍首卻是資料庫伺服器。

若為 ,請務必監視 SQL Server 索引片段,並遵循以下 Microsoft 知識庫文章中所述之 SharePoint 產品及技術的 SQL Server 磁碟重組方針:如何重組 Windows SharePoint Services 3.0 資料庫及 SharePoint Server 2007 資料庫的磁碟 (英文) (https://go.microsoft.com/fwlink/?linkid=105588&clcid=0x404)。如此可大幅縮短搜尋時間。

套用 ASP.NET # Induced GC 計數器 Hotfix

當您執行 Microsoft .NET Framework 2.0 版內建的 Microsoft ASP.NET 2.0 Web 應用程式時 (例如 Office SharePoint Server 2007),# Induced GC 效能計數器的值會迅速增加。此外,CPU 使用量也會變高,而導致電腦效能下降。若要解決這個問題,請套用以下知識庫文章所提供的 Hotfix:FIX:執行 .NET Framework 2.0 內建的 ASP.NET 2.0 Web 應用程式時,# Induced GC 效能計數器的值會快速增加,且 CPU 使用量會變高 (https://go.microsoft.com/fwlink/?linkid=105921&clcid=0x404) (機器翻譯)。

設定應用程式集區回收的設定以取得較佳的可用性

使用本節提供的指導調整應用程式集區,以提高可用性。

  • 伺服器陣列中如有多部網頁伺服器,請務必為每部網頁伺服器上之應用程式集區設定不同的回收時間。

  • 在不同時間回收 IIS 網站可將負載分散到伺服器陣列的所有網頁伺服器。若必須在同一時間回收特定網站上的多個應用程式集區,您應暫時從負載平衡器移除該網頁伺服器,以避免在回收程序期間造成效能低落。

  • 當您計劃回收32 位元伺服器上的應用程式集區時,請考量每個應用程式集區使用的記憶體總量,並根據使用的記憶體量修訂回收頻率。使用較少記憶體資源的應用程式集區,所需要的回收少於記憶體用量大的應用程式集區。

    64 位元伺服器記憶體管理的效率優於 32 位元伺服器。但仍建議您排程於夜間回收 64 位元伺服器的應用程式集區。這有助於降低因分散而產生問題的可能性。

如需應用程式集區回收的詳細資訊,請參閱重疊回收與 SharePoint:64 位元設定是什麼?(英文) (https://go.microsoft.com/fwlink/?linkid=127018&clcid=0x404)。

監視與管理 32 位元的工作者處理序回收

預設會為每個 32 位元 Windows 使用者模式處理序配置 2GB 的虛擬位址空間。此位址空間有部分必須保持不使用,以用於動態配置。此外,Office SharePoint Server 有某些作業需要大區塊的連續位址空間,才能執行動態配置。處理序執行愈久,位址空間就分得愈散。因此,當 Office SharePoint Server 工作者處理序的大小超過 1.2 GB 到達 1.4 GB 時,處理序即開始出現記憶體不足錯誤及其他異常事件。隨著處理序繼續消耗位址空間,錯誤愈形嚴重,最終造成 IIS 終止作業。

重要

在 64 位元的環境中,執行時的處理序回收預設值一般都夠用。因此,不建議您變更這些值。

若要解決這個問題,建議您在每部 32 位元的網頁伺服器上設定下列處理序。

  • 使用 IIS 重疊回收

    定期重新啟動工作者處理序有助於減少位址空間的分散。使得處理序更耐久有效。IIS 的重疊回收功能可用於緩慢回收 SharePoint 工作者處理序。讓現有的使用者要求有時間完成。在停止及重新啟動現有的處理序之前,即已啟動新的處理序處理所有新的要求。當現有的要求已全部處理或超過關機時間限制時,即會關閉舊處理序。

    為了獲得最佳結果,您應設定 IIS 於特定時段或記憶體用量到達特定程度時再回收。

    • 設定達 1700 MB 時進行虛擬記憶體回收。

    • 設定達 1000 MB 時進行使用的記憶體回收。

    • 關機時間限制至少設為 300 秒,好讓執行時間長的使用者要求 (例如大型檔案上載) 有充裕時間完成。

    • 對在一天特定幾個時段經常性處理大量負載的環境中,使用以時間為基礎的回收。請將回收時間排定在尖峰開始前約 30 分鐘。

    無法在 32 位元伺服器上設定這些設定,可能會對 ASP.NET 快取管理造成不利影響。若不設定處理序記憶體限制,ASP.NET 會為您計算一個值。如果使用者模式位址空間為 2 GB,ASP.NET 會使用 60% 的實體 RAM 或 800 MB,取其較小者。此值會用於判斷快取應多勤快清理記憶體。此值設定太低可能會造成過多的記憶體清理作業。設定太高又會讓處理序變得太大,造成 OutOfMemory 例外狀況及其他錯誤。

    如需回收工作者處理序的詳細資訊,請參閱 使用 IIS 6.0 回收工作者處理序 (https://go.microsoft.com/fwlink/?linkid=105924&clcid=0x404)。

  • 啟用 LogEventOnRecycle IIS Metabase 內容追蹤處理序回收

    若要追蹤工作者處理序回收的頻率,您可使用 Internet Information Services (IIS) 6.0 Metabase 的 LogEventOnRecycle 屬性,在系統事件記錄檔中產生項目。若發現這些處理序回收的頻率短於 4 小時,請考慮多增加幾部網頁伺服器以處理負載。

    您可以使用 Adsutil.vbs 設定標幟。請遵循下列步驟,將所有應用程式集區處理序的成因寫入事件記錄檔:

    1. 依序按一下 [開始] 和 [執行],輸入 cmd,然後按 ENTER。

    2. 變更至 Adsutil 所在的目錄。以下為預設目錄位置:%SYSTEMDRIVE%\Inetpub\AdminScripts

    3. 輸入下列命令,然後按 ENTER:

      cscript adsutil.vbs Set w3svc/AppPools/ <應用程式集區名稱> /LogEventOnRecycle 255

      在此命令中,請以您要啟用事件的應用程式集區名稱取代應用程式集區名稱

      注意

      如果應用程式集區名稱中有空格,例如 “SharePoint- 80”,即必須在命令中使用雙引號括住 Metabase 路徑,如下例所示。

      cscript adsutil.vbs Set "w3svc/AppPools/SharePoint - 80/LogEventOnRecycle" 255

    如需詳細資訊,請參閱如何在 IIS 6.0 中修改應用程式集區回收事件 (https://go.microsoft.com/fwlink/?linkid=105925&clcid=0x404) (機器翻譯)。

在離峰時段執行維護

當其他網站仍在使用中時移動或刪除網站,會造成整個入口網站停止回應。因此,請在離峰時間執行這些使用大量資源的維護活動。

頁面不要保持取出狀態

您使用的若是「企業內容管理」,頁面請不要保持取出狀態。如果可能的話,請改為每次變更之後快速存回頁面。頁面保持在取出狀態會降低頁面轉譯的效能。

小心監視自訂和網頁組件的使用

請僅部署遵循下列資源中所述最佳作法的自訂:

也請監視網頁組件和頁面轉譯時間。同事網頁組件可以進行密集處理。請勿將它用於顯示大量其他資訊的頁面上。

監視及管理大型檔案

處理大於 5 MB 的檔案時,請將文件的最大上載大小變更為符合業務需求的最大預期檔案大小。檔案的預設最大上載大小為 50 MB。SharePoint 產品及技術支援的最大檔案大小為 2 GB。

如果使用者經常存取某個大型檔案的集合,而這些檔案不常更新,建議您將它們儲存在 Office SharePoint Server 之外。並請考慮改用離線共同作業用戶端。

訓練使用者使用大型檔案

使用者使用大型檔案的方式對效能有顯著影響。

  • 所有使用者應至少配置 50 MB 以供網際網路暫存檔案 (Internet Explorer 快取) 使用,若定期開啟大型檔案,則應配置更多空間。未替網際網路暫存檔案配置空間的使用者,其網頁伺服器會產生極大的負載。

  • 使用大於 25 MB 之文件的使用者,應將文件儲存到本機電腦。直接從文件庫開啟大型文件,會在文件開啟時耗用頻寬與資源,而且可能自動將變更直接儲存到文件庫的文件。

    使用者應在文件上按一下滑鼠右鍵,先將其儲存到電腦,再開啟文件,並在完成編輯後將所有變更上傳至文件庫。

  • 使用者不應使用 [總管檢視] 檢視大型文件。應改用 [所有文件] 檢視。當您以 [總管檢視] 開啟 SharePoint 文件庫時,將指標放在列舉的任何檔案上都需要正在瀏覽之資料夾中所有檔案的中繼資料。有時還可能需要整個檔案。若同時以 [總管檢視] 瀏覽許多大型檔案,會造成伺服器上非常高的負載。

  • 使用者不應在文件庫中,使用 [編輯] 功能表之 [傳送至]**** 子功能表的 [下載複本] 項目。[下載複本]**** 選項會在網頁伺服器的記憶體中開啟完整的檔案。

訓練使用者使用大型文件庫

使用者使用大型文件庫的方式對效能有顯著影響。

  • 使用者應透過已編製索引的自訂檢視篩選來使用大型文件庫,而非直接存取文件庫。

  • 建議使用者不要使用 [總管檢視] 檢視大型文件庫。應改用 [所有文件] 檢視。當您以 [總管檢視] 開啟 SharePoint 文件庫時,將指標放在列舉的任何檔案上都需要正在瀏覽之資料夾中所有檔案的中繼資料。有時還可能需要整個檔案。在包含許多項目的資料夾中,此程序會很耗時,而且可能會影響伺服器陣列的效能。

  • 和使用者一起建立符合其需求的適當檢視,不建議使用者建立專用的大型清單檢視。如果您有包含許多大型清單的 Web 應用程式,或許可以考慮停用整個 Web 應用程式的「管理個人檢視」權限。

管理大型清單以保障效能

SharePoint 產品及技術支援大型清單。但是,您必須謹慎控制使用者檢視清單的方式,以防止對效能造成負面影響。

  • 為了達到最佳效能,每個清單層級 (例如清單的根目錄或單一資料夾) 請勿超過 2,000 個項目。

  • 如果您必須建立及瀏覽大型清單,請使用下列最佳作法:

    • 在一或多欄中編製清單的索引。

    • 將清單的預設檢視變更為遵循下列建議的自訂篩選檢視:

      • 檢視傳回 5,000 個以下的項目。

      • 篩選檢視所使用的第一欄有索引,且足以降低傳回項目的總數。

      • 檢視僅顯示絕對必要的欄。

      • 檢視盡可能包含最少的查閱欄。檢視所含清單的每個查閱欄都會引起資料庫的額外連接及額外呼叫。

  • 根據清單中的欄數評估清單大小。欄太多的清單執行速度慢。

請注意,下列設定及作業會顯著影響內含大型清單的網站效能。

  • 複合式明確權限 (對清單或文件庫、資料夾、或者項目或文件層級的權限) 會強制檢查每個項目的授權。

  • 變更授權設定。

  • 建立、更新及刪除索引。

  • 匯入及匯出內容。

  • 刪除清單。

  • 部署新內容類型或更新現有的內容類型。

如果您的工作流程會產生大量工作和歷程記錄項目,您或許會建立大型清單。針對使用量大的工作流程,請遵循下列作法:

  • 保持 AutoCleanupDays 計時器工作繼續執行,以清除已完成工作流程中超過 60 天的工作。

  • 建立工作流程關聯時,若預期該工作流程會使用頻繁或建立大量工作和歷程記錄項目,請使用非預設的工作和歷程記錄清單。

請注意,如果您的網站使用大型清單,則會降低使用 Stsadm 備份作業執行的網站集合備份效能。

若打算建立或目前已有非常大型的清單,強烈建議您閱讀下列資源:

下載本書

本主題隨附於下列可下載的叢書中,以便於閱讀與列印:

請參閱 Office SharePoint Server 2007 可下載的內容 (英文) 上提供的完整叢書清單。