Citrix Virtual Apps Tips : Windows Server Optimizations
Here you go to understand how to leverage endpoint user experience . To help customers on this way, Citrix has also “VDA optimizer” to review current setup and configurations within VDA machines. But when it comes to operating system optimization, I have two sides battling with each other. Although optimizing does improve single server scalability, I believe the more you mess with the OS the greater your chances are that you will break something.
Default Apps : Unlike Windows 10, which had numerous default apps that increased user logon time, Windows Server 2016 is free from such additions.
Services : Many of the services we disabled in Windows 10 are already configured as manual startup in Windows 2016. Looking deeper, it would appear that many of these services are either started based on a request by an application or based on a scheduled task.If a manual startup service is disabled, then any application or system component that tries to interact with the service will fail. This will result in application/system issues, support calls and long troubleshooting times.Based on that , the only service that you think about disabling is:
Note: Microsoft published a list of services that can and should not be disabled. Most services that can be disabled are configured for manual startup mode.
Service Name | Default State | Default Status | Hosted Apps Workloads | Hosted Desktop Workloads |
Themes | Automatic | Running | Disable | Enable – better user experienceDisable – better server density |
Scheduled Tasks
Scheduled tasks will sporadically impact density as they only run when a trigger is tripped. When determining what to disable, we need to look at the value the task has in a non-persistent environment. This assumption is based on the XenApp Best Practice of server consistency.
Scheduled Tasks – Applications
Tasks | Description |
Application Experience \ Microsoft Compatibility Appraiser | Helps resolve application compatibility challenges. |
Application Experience \ StartupTask | Determines if there are too many startup entries and then notifies the user |
Scheduled Tasks – Microsoft Customer Experience Program
Tasks | Description |
AutoCHK \ Proxy | This task collects and uploads autochk SQM data if opted-in to the Microsoft Customer Experience Improvement Program. |
Customer Experience Improvement Program \Consolidator | If the user has consented to participate in the Windows Customer Experience Improvement Program, this job collects and sends usage data to Microsoft. |
Customer Experience Improvement Program \KernelCeipTask | The Kernel CEIP (Customer Experience Improvement Program) task collects additional information about the system and sends this data to Microsoft. If the user has not consented to participate in Windows CEIP, this task does nothing. |
Customer Experience Improvement Program \UsbCeip | The USB CEIP (Customer Experience Improvement Program) task collects Universal Serial Bus related statistics and information about your machine and sends to the Windows Device Connectivity engineering group at Microsoft. The information received is used to help improve the reliability, stability, and overall functionality of USB in Windows. If the user has not consented to participate in Windows CEIP, this task does not do anything. |
Scheduled Tasks – Safety
Tasks | Description |
Windows Defender \ Windows Defender Cache Maintenance | Can be disabled in case an alternative virus and malware protection has been implemented. |
Windows Defender \ Windows Defender Cleanup | Can be disabled in case an alternative virus and malware protection has been implemented. |
Windows Defender \ Windows Defender Scheduled Scan | Can be disabled in case an alternative virus and malware protection has been implemented. |
Windows Defender \ Windows Defender Verification | Can be disabled in case an alternative virus and malware protection has been implemented. |
Windows Filtering Platform \BfeOnServiceStartTypeChange | This task adjusts the start type for firewall-triggered services when the start type of the Base Filtering Engine (BFE) is disabled. |
Scheduled Tasks – Maintenance
Tasks | Description |
CHKDSK \ Proactive Scan | NTFS Volume Health Scan |
Diagnosis \ Scheduled | The Windows Scheduled Maintenance Task performs periodic maintenance of the computer system by fixing problems automatically or reporting them through the Action Center. |
DiskDiagnostic \ Microsoft-Windows-DiskDiagnosticDataCollector | The Windows Disk Diagnostic reports general disk and system information to Microsoft for users participating in the Customer Experience Program. |
Maintenance \ WinSAT | Measures a system’s performance and capabilities |
Power Efficiency Diagnostics \ AnalyzeSystem | This task analyzes the system looking for conditions that may cause high energy use. |
RecoveryEnvironment \ VerifyWinRE | Validates the Windows Recovery Environment. |
Registry \ RegIdleBackup | Registry Idle Backup Task |
Scheduled Tasks – General
Tasks | Description |
Mobile Broadband Accounts / MNO Metadata Parser | Parses information related to mobile broadband users |
Power Efficiency Diagnostics \ AnalyzeSystem | This task analyzes the system looking for conditions that may cause high energy use. |
RAS / MobilityManager | Provides support for the switching of mobility enabled VPN connections if their underlying interface goes down. |
Shell / IndexerAutomaticMaintenance | Maintains the search index |
WDI \ ResolutionHost | The Windows Diagnostic Infrastructure Resolution host enables interactive resolutions for system problems detected by the Diagnostic Policy Service. It is triggered when necessary by the Diagnostic Policy Service in the appropriate user session. If the Diagnostic Policy Service is not running, the task will not run |
User InterfaceMany of the user interface optimizations have been used on Windows Server 2000 and beyond, consisting of good practices in order to hide administrative items from the user and to have more efficient overall usage by disabling a few user interface capabilities.
Optimization | Configuration |
Disable default system Screensaver | HKEY_USERS\.DEFAULT\ControlPanel\Desktop“ScreenSaveActive”=dword: 00000000 |
Hide Hard Error Messages | [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Windows]“ErrorMode”=dword:00000002 |
Settings “Visual Effects to Custom” | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects]“VisualFXSetting”=dword:00000003 |
Disable “Show translucent selection rectangle” | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]“ListviewAlphaSelect”=dword:00000000 |
Disable “Show shadows under windows” | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]“ListviewShadow”=dword:00000000 |
Disable “Animate windows when minimizing and maximizing” | [HKEY_CURRENT_USER \ControlPanel\Desktop\WindowMetrics]“MinAnimate”=”0” |
Disable “Animations in the taskbar” | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]“TaskbarAnimations”=dword:00000000 |
Disable “Enable Peek” | [HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM]“EnableAeroPeek”=dword:00000000 |
Disable “Save Taskbar Thumbnail Previews” | [HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM]“AlwaysHibernateThumbnails”=dword:00000000 |
Disable “Smooth edges of screen fonts” | [HKEY_CURRENT_USER \Control Panel\Desktop]“FontSmoothing”=”0” |
Disable the rest of the visual effects | [HKEY_CURRENT_USER \Control Panel\Desktop\]“UserPreferencesMask”=RegBin: “90,12,03,80,10,00,00,00” |
Disable cursor blink rate | [HKEY_CURRENT_USER \Control Panel\Desktop]“CursorBlinkRate”=”-1″ |
Disable Internet Explorer First RunWizard | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\InternetExplorer\Main]“DisableFirstRunCustomize”=dword:00000001 |
Reduce menu show delay | [HKEY_CURRENT_USER\ControlPanel\Desktop]MenuShowDelay”, “0” |
SystemThe final optimizations are focused on system-level settings, allowing organizations to get the most value of their systems.
System – BIOS
Optimization | Configuration |
Max Performance | Verify BIOS is set for maximum performance and not low power. |
System – Commands
Optimization | Configuration |
Disable hibernate | Powercfg -h off |
System – Registry updates
Optimization | Configuration |
Disable NTFS Last Access Timestamps | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]“NtfsDisableLastAccessUpdate”=dword:00000001 |
Disable Memory Dump Creation | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl]“CrashDumpEnabled”=dword:00000000“LogEvent”=dword:00000000“SendAlert”=dword:00000000 |
Increase Disk I/O Timeout to 200Seconds | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Disk]“TimeOutValue”=dword:000000C8 |