Share via


遠端桌面工作階段主機效能調整

本主題討論如何選取遠端桌面工作階段主機 (RD 工作階段主機) 硬體、調整主機,以及調整應用程式。

本主題內容:

選取適當的硬體以獲得效能

針對 RD 工作階段主機伺服器部署,應用程式集會控管硬體的選擇,以及使用者如何使用它們。 影響使用者數目和其體驗的主要因素是 CPU、記憶體、磁碟和圖形。 本節包含 RD 工作階段主機伺服器特有的其他指導方針,而且大部分與 RD 工作階段主機伺服器的多使用者環境有關。

CPU 設定

CPU 設定在概念上是透過將支援工作階段所需的 CPU 乘上系統預期支援的工作階段數目所決定,同時維護緩衝區來處理暫時尖峰。 多個邏輯處理器有助於減少異常 CPU 壅塞狀況,這通常是類似數目的邏輯處理器所包含的一些過度活躍執行緒所造成。

因此,系統上的邏輯處理器越多,必須內建到 CPU 使用量估計的緩衝邊界就越低,而這會導致每個 CPU 具有較大的使用中負載百分比。 要記住的一個重要因素是,將 CPU 數目翻倍並不會讓 CPU 容量翻倍。

記憶體組態

記憶體設定取決於使用者所採用的應用程式;不過,使用下列公式,可以估計所需的記憶體數量:TotalMem = OSMem + SessionMem * NS

OSMem 是作業系統需要執行的記憶體數量 (例如系統二進位映像、資料結構等等)、SessionMem 是一個工作階段中執行的記憶體程序數量,而 NS 是使用中工作階段的目標數目。 工作階段所需的記憶體數量主要取決於工作階段內所執行應用程式和系統程序的專用記憶體參考集。 共用程式碼或資料頁面幾乎沒有作用,因為系統上只有一個複本。

一個有趣的觀察 (假設備份分頁檔案的磁碟系統未變更) 是系統計劃支援的並行使用中工作階段數目越大,每個工作階段記憶體配置就必須越大。 如果未增加每個工作階段所配置的記憶體數量,則使用中工作階段所產生的分頁錯誤數目會隨著工作階段數目而增加。 這些錯誤最終會妨礙 I/O 子系統。 增加每個工作階段所配置的記憶體數量,產生分頁錯誤的機率就會降低,這有助於降低分頁錯誤的整體速率。

磁碟設定

當您設定 RD 工作階段主機伺服器時,儲存體是其中一個最容易被忽略的層面,而且這在欄位中所部署的系統內可能是最常見的限制。

一般 RD 工作階段主機伺服器上所產生的磁碟活動會影響下列區域:

  • 系統檔案和應用程式二進位檔案

  • 分頁檔案

  • 使用者設定檔和使用者資料

在理想情況下,這些區域應該由不同的儲存裝置進行備份。 使用等量 RAID 設定或其他類型的高效能儲存體可進一步改善效能。 強烈建議您搭配使用儲存體配接器與電池支援的寫入快取。 具有磁碟寫入快取的控制器可改善同步寫入作業的支援。 因為所有使用者都有個別的 Hive,所以同步寫入作業在 RD 工作階段主機伺服器上明顯更為常見。 使用同步寫入作業,將登錄區定期儲存至磁碟。 若要啟用這些最佳化,請從 [磁碟管理] 主控台中開啟目的地磁碟的 [內容] 對話方塊,並在 [原則] 索引標籤上,於裝置核取方塊上選取 [在磁碟上啟用寫入快取] 和 [關閉 Windows 寫入快取緩衝區排清]

網路組態

RD 工作階段主機伺服器的網路使用量包括兩個主要類別:

  • RD 工作階段主機連線流量使用量幾乎完全取決於工作階段內所執行應用程式所展示的繪圖模式以及重新導向的裝置 I/O 流量。

    例如,可處理文字處理和資料輸入的應用程式會耗用大約每秒 10 到 100 KB 的頻寬,而豐富的圖形和視訊播放會導致頻寬使用量大幅增加。

  • 後端連線,例如漫遊設定檔、檔案共用的應用程式存取、資料庫伺服器、電子郵件伺服器和 HTTP 伺服器。

    網路流量的磁碟區和設定檔是每個部署所特有。

調整遠端桌面工作階段主機的應用程式

RD 工作階段主機伺服器上的大部分 CPU 使用量都是由應用程式所驅動。 桌面應用程式通常會針對回應性進行最佳化,目標是將應用程式回應使用者要求所花費的時間降到最低。 不過,在伺服器環境中,將完成動作所需的 CPU 使用量總量降到最低以避免對其他工作階段造成負面影響同樣重要。

當您設定要用於 RD 工作階段主機伺服器的應用程式時,請考慮下列建議:

  • 最小化背景閒置迴圈處理

    典型範例是停用背景文法和拼字檢查、搜尋的資料索引,以及背景儲存。

  • 最小化應用程式執行狀態檢查或更新的頻率。

    停用這類行為或增加輪詢反覆項目與計時器引發之間的間隔可大幅提升 CPU 使用量,因為會快速放大許多作用中工作階段的這類活動效果。 典型範例是連線狀態圖示和狀態列資訊更新。

  • 減少應用程式的同步處理頻率,以將應用程式之間的資源爭用降到最低。

    這類資源的範例包括登錄機碼和設定檔。 應用程式元件和功能的範例包括狀態指標 (例如殼層通知)、背景編製索引或變更監視,以及離線同步處理。

  • 停用不必要的程序,而這些程序的註冊是要利用使用者登入或工作階段啟動進行啟動。

    建立新的使用者工作階段 (通常是需要大量 CPU 的程序)時,這些程序可能大幅增加 CPU 使用量的成本,而且在上午的案例中可能會非常昂貴。 使用 MsConfig.exe 或 MsInfo32.exe 來取得使用者登入時所啟動的程序清單。 如需詳細資訊,您可以使用適用於 Windows 的自動執行

針對記憶體耗用量,您應該考慮下列項目:

  • 確認未重新放置應用程式所載入的 DLL。

    • 使用程序總管,即可選取 [程序 DLL] 檢視來驗證重新放置的 DLL,如下圖所示。

    • 在這裡可以看到已重新放置 y.dll,因為 x.dll 已佔用其預設基底位址,而且未啟用 ASLR

      relocated dlls

      如果重新放置 DLL,則無法跨工作階段共用其程式碼,而這會大幅增加工作階段的使用量。 這是 RD 工作階段主機伺服器上最常見的其中一個記憶體效能問題。

  • 針對 Common Language Runtime (CLR) 應用程式,使用原生映像產生器 (Ngen.exe) 來增加頁面共用並減少 CPU 額外負荷。

    如果可能,請將類似的技術套用至其他類似的執行引擎。

遠端桌面工作階段主機調整參數

分頁檔案

分頁檔案大小不足可能會導致應用程式或系統元件中的記憶體配置失敗。 您可以使用記憶體到認可的位元組效能計數器來監視系統上認可的虛擬記憶體數量。

防毒

在 RD 工作階段主機伺服器上安裝防毒軟體會大幅影響整體系統效能,特別是 CPU 使用量。 強烈建議您從使用中監視清單中排除所有保存暫存檔的資料夾,特別是服務和其他系統元件所產生的資料夾。

工作排程器

[工作排程器] 可讓您檢查針對不同事件所排程的工作清單。 針對 RD 工作階段主機伺服器,特別著重於設定在閒置、使用者登入或工作階段連線和中斷連線時所執行的工作。 因為部署的細節,所以這些工作有許多可能不是必要工作。

桌面通知圖示

桌面上的通知圖示可能會有相當昂貴的重新整理機制。 您應該停用任何通知,方法是從啟動清單中移除可註冊通知的元件,或變更應用程式和系統元件上的設定將其停用。 您可以使用「自訂通知圖示」來檢查伺服器上可用的通知清單。

遠端桌面通訊協定資料壓縮

使用 [電腦設定] > [系統管理範本] > [Windows 元件] > [遠端桌面服務] > [遠端桌面工作階段主機] > [遠端工作階段環境] > [設定 RemoteFX 資料的壓縮] 下方的群組原則,可以設定遠端桌面通訊協定壓縮。 可能有三個值:

  • 最佳化以使用較少的記憶體 每個工作階段耗用的記憶體數量最少,但壓縮率最低,因此頻寬耗用量最高。

  • 平衡記憶體和網路頻寬 降低頻寬耗用量,同時稍微增加記憶體耗用量 (每個工作階段大約 200 KB)。

  • 最佳化以使用較少的網路頻寬 進一步降低網路頻寬使用量,成本大約是每個工作階段 2 MB。 如果您想要使用此設定,則應該先評估工作階段數目上限,並使用此設定測試該層級,再將伺服器放在生產環境中。

您也可以選擇不使用遠端桌面通訊協定壓縮演算法,因此我們只建議將其與設計為最佳化網路流量的硬體裝置搭配使用。 即使您選擇不使用壓縮演算法,還是會壓縮某些圖形資料。

裝置重新導向

使用 [電腦設定] > [系統管理範本] > [Windows 元件] > [遠端桌面服務] > [遠端桌面工作階段主機] > [裝置和資源重新導向] 下方的群組原則,或使用 [伺服器管理員] 中的 [工作階段集合] 內容方塊,來設定裝置重新導向。

一般而言,裝置重新導向會增加 RD 工作階段主機伺服器連線所使用的網路頻寬量,因為會在用戶端電腦上的裝置與伺服器工作階段中所執行的程序之間交換資料。 增加範圍是作業頻率函數,而伺服器上所執行的應用程式會針對重新導向的裝置執行這些作業。

印表機重新導向和隨插即用裝置重新導向也會增加登入時的 CPU 使用量。 您可以透過兩種方式來重新導向印表機:

  • 必須在伺服器上安裝印表機的驅動程式時,比對印表機驅動程式型重新導向。 舊版 Windows Server 已使用此方法。

  • 在 Windows Server 2008 中引進時,「簡易列印」印表機驅動程式重新導向會針對所有印表機使用通用印表機驅動程式。

建議使用「簡易列印」方法,因為其會在連線時間使用較少的 CPU 來進行印表機安裝。 相符的驅動程式方法會導致 CPU 使用量增加,因為其需要多工緩衝處理器服務才能載入不同的驅動程式。 針對頻寬使用量,「簡易列印」會導致網路頻寬使用量稍微增加,但不足以抵消其他效能、管理性和可靠性優點。

音訊重新導向會導致網路流量的穩定資料流。 音訊重新導向也可讓使用者執行通常具有高 CPU 耗用量的多媒體應用程式。

用戶端體驗設定

根據預設,遠端桌面連線 (RDC) 會根據伺服器與用戶端電腦之間的網路連線適用性來自動選擇正確的體驗設定。 建議 RDC 設定保持「自動偵測連線品質」

針對進階使用者,RDC 可控制影響遠端桌面服務連線網路頻寬效能的一系列設定。 您可以使用 [遠端桌面連線] 中的 [體驗] 索引標籤或 RDP 檔案中的設定,來存取下列設定。

連線至任何電腦時,會套用下列設定:

  • 停用桌布 (Disable wallpaper:i:0) 不會在重新導向的連線上顯示桌面桌布。 如果桌面桌布是由影像或繪製成本很高的其他內容所組成,則此設定可以大幅降低頻寬使用量。

  • 點陣圖快取 (Bitmapcachepersistenable:i:1) 啟用此設定時,會建立工作階段中所轉譯點陣圖的用戶端快取。 其會大幅改善頻寬使用量,而且應該一律予以啟用 (除非有其他安全性考量)。

  • 拖曳時顯示視窗的內容 (Disable full window drag:i:1) 停用此設定時,只會顯示視窗框架來減少頻寬,而不是拖曳視窗時的所有內容。

  • 功能表和視窗動畫 (Disable menu anims:i:1 和 Disable cursor setting:i:1):停用這些設定時,會停用功能表 (例如淡化) 和游標上的動畫來降低頻寬。

  • 字型平滑 (Allow font smoothing:i:0) 控制 ClearType 字型轉譯支援。 連線至執行 Windows 8 或 Windows Server 2012 和以上版本的電腦時,啟用或停用此設定不會對頻寬使用量造成顯著影響。 不過,針對執行 Windows 7 和 Windows 2008 R2 之前版本的電腦,啟用此設定會大幅影響網路頻寬耗用量。

下列設定僅適用於連線至執行 Windows 7 和舊版作業系統的電腦時:

  • 桌面組合 只有執行 Windows 7 或 Windows Server 2008 R2 之電腦的遠端工作階段才支援此設定。

  • 視覺效果樣式 (disable themes:i:1) 停用此設定時,會簡化使用傳統主題的主題繪圖來降低頻寬。

使用遠端桌面連線內的 [體驗] 索引標籤,您可以選擇連線速度以影響網路頻寬效能。 下面列出可用來設定連線速度的選項:

  • 自動偵測連線品質 (Connection type:i:7) 啟用此設定時,遠端桌面連線會自動選擇可根據連線品質產生最佳使用者體驗的設定。 (連線至執行 Windows 8 或 Windows Server 2012 和以上版本的電腦時,建議使用此設定)。

  • 數據機 (56 Kbps) (Connection type:i:1) 此設定可啟用持續性點陣圖快取。

  • 低速寬頻 (256 Kbps - 2 Mbps) (Connection type:i:2) 此設定可啟用持續性點陣圖快取和視覺效果樣式。

  • 行動電話通訊/衛星 (2Mbps - 16 Mbps,含高延遲) (Connection type:i:3) 此設定可啟用桌面轉譯緩衝處理、持續性點陣圖快取、視覺效果樣式和桌面背景。

  • 高速寬頻 (2 Mbps – 10 Mbps) (Connection type:i:4) 此設定可啟用桌面轉譯緩衝處理、拖曳時顯示視窗的內容、功能表和視窗動畫、持續性點陣圖快取、視覺效果樣式和桌面背景。

  • WAN (10 Mbps 或更快的速度,但高延遲) (Connection type:i:5) 此設定可啟用桌面轉譯緩衝處理、拖曳時顯示視窗的內容、功能表和視窗動畫、持續性點陣圖快取、視覺效果樣式和桌面背景。

  • LAN (10 Mbps 或更快的速度) (Connection type:i:6) 此設定可啟用桌面轉譯緩衝處理、拖曳時顯示視窗的內容、功能表和視窗動畫、持續性點陣圖快取、佈景主題和桌面背景。

桌面大小

遠端工作階段的桌面大小可以使用 [遠端桌面連線] 中的 [顯示] 索引標籤或使用 RDP 設定檔 (desktopwidth:i:1152 和 desktopheight:i:864) 進行控制。 桌面大小越大,與該工作階段相關聯的記憶體和頻寬耗用量就越大。 目前的桌面大小上限為 4096 x 2048。