5.5. Best practices for client operation on Terminal Servers

From its very inception on, IDERI note has always supported the operation of all of its components on Terminal Server Editions of the Windows® Server Operating System as well as the operation in RDP sessions of the workstation variants of the Windows® operating system family. But over time, most notably for the IDERI note client, the feature set built into the IDERI note product has grown and not all features that have been added provide additional value specifically on Terminal Servers. Since every new feature also requires some additional demands on CPU and memory usage, the IDERI note client has been designed in such a way that features can be deactivated at installation time using a multitude of MSI properties, or at runtime using their corresponding registry values or group policy values. This is of particular importance on terminal servers where CPU and memory are shared often by hundreds of simultaneously logged in users and where also additional resource requirements of an application quickly add up, because they are multiplied by the number of simultaneous user connections. This section will highlight specifically those IDERI note client product features, that make little or no sense on Terminal Servers, but can contribute significantly to resource usage. Readers are encouraged to compare their existing installations of the IDERI note client with the recommendations in this section or use them to plan ahead for new IDERI note client installations on terminal servers.

5.5.1. Running the client on the logon screen

Running the client on the logon screen (see section 5.2) is the most prominent example of an IDERI note client product feature that should never be activated on a terminal server. The logon screen of a terminal server session can only be seen for a very tiny time interval during login or while elevating an application to run as an administrator. Not without reason, the IDERI note client installer (see figure 3.23) and the IDERI note client customization wizard and its help pages explicitly advise against using this feature on terminal servers. This feature requires a separate instance of the IDERI note client per terminal session to run on the logon screen that operates as the computer’s Active Directory® computer account from the perspective of the IDERI note server. Usually this setting does not impact performance on a single user workstation, but on a terminal server, it can easily double the CPU requirements and memory load induced by the IDERI note client. Running the client on the logon screen is an installation time decision and is controlled by the STARTWINLOGONCLIENTS msi property (see table intclnt.msi MSI properties).

5.5.2. Stopping the screensaver, activating the logon screen for pending messages and showing notifications on the logon screen

Stopping the screensaver, activating the logon screen for pending messages on the logon screen and showing notifications on the logon screen for pending messages on the locked user desktop are other examples of IDERI note client features that make little or no sense on a terminal server. While these features can be enabled with fine granularity (see section 5.4 and section 5.3, they are disabled by default on a Windows® server operating system. They can only be activated on a Windows® server operating system by setting the ServerOverrideWLN registry override DWORD value to a non-zero value (see table inotecln.exe Registry Values). At installation time, this behavior is controlled by the SERVER_OVERRIDE_WLN msi property (see table intclnt.msi MSI properties). For terminal servers this DWORD value should have its default value of “0”.

5.5.3. Terminal server optimizations for the IDERI note ticker

The IDERI note ticker can optimize its performance on terminal servers at the cost of minor user interface niceties like a gradient background fade at the ticker edges using the registry DWORD value TermServOptimize (see table inotecln.exe Registry Values) at runtime. At installation time, the TERMSERV_OPTIMIZE msi property (see table intclnt.msi MSI properties) can be used to control this behavior. These values should be set to their default value of “1” on terminal servers in order to minimize the impact of the IDERI note ticker on terminal server performance.