App-V 5 and Citrix

There is a great new whitepaper released by Microsoft dealing with different deployment scenarios when it comes to Citrix products. As Citrix announced the end of life for their Application Streaming – quite a few people have started to migrate over to App-V 5.

Unfortunately – App-V 5 is a bit more work (infrastructure wise) to get started and at the moment it is a bit slower aswell.

There isn’t any promise by Microsoft that this has improved in App-V 5.0 SP2, however thinking logically one could assume that all customer cases raised before App-V 5.0 SP2 will hopefully have made the product better.

So, what can we do for all the environments where we today suffer from a poor launch or publishing refresh experience?

1. Disable background staging of the registry to on-demand.

This may reduce the CPU-load!

Set the following registry key;


HKEY_LOCAL_MACHINE\Software\Microsoft\AppV\Subsystem

Value; NoBackgroundRegistryStaging

DWORD: 1

Source: App-V: On Registry Staging and how it can affect VDI Environments

2. Improve streaming performance by using IIS caching

Ingmar has created a great article on howto enable IIS to cache App-V files (which usually are large and thereby excluded from cache).

See his complete article; Microsoft App-V 5.0 – Streaming via HTTP

3. Use SMB 3.0 if you aren’t using a web-server.

Its fast. See the proof here at Xenapp-blog – Citrix XenServer – Make your network 10x faster or at the Citrix-blogs. Aidan has explained even more benefits for Windows Server 2012 R2 which kicks up the performance even more.

Migrating away from the old legacy (yes, they are legacy now) Windows Server 2008 R2 servers to take the benefit of even faster performance when it comes to file-transfer.

A great collection of Microsoft resources;

Updated Links on Windows Server 2012 R2 File Server and SMB 3.02

4. Use Global Refresh and disable User Refresh

Once the application is actually published to a client the performance impact isn’t usually that bad with App-V 5. If you deploy applications globally to a machine the provisioning part is moved away from the user context and to the machine context. By default though a option is set to perform a Global Refresh once a user logs on. If that is disabled, we completely remove that Publishing operation from the logon process.

Sample command-line,


Add-AppvPublishingServer –Name Server -URL <a href="http://server:80">http://server:80</a> –GlobalRefreshEnabled $true –GlobalRefreshOnLogon $false -GlobalRefreshInterval 1 –GlobalRefreshIntervalUnit Day

5. Set App-V specific process within the LogOffSysCheckModules Registry key

This is an oldie, but still valid. Citrix maintains a list of processes that it doesn’t consider to worth keeping the session alive for. Usually what happens is that sessions are just never logged off and the servers get full, without any active workers on it.

Process to include in the key;


AppVStreamingUX.exe,AppVSHNotify.exe

Source;

Tips/Tricks for Using App-V Integration with XenDesktop 7.0