Skip to main content

Substituting Citrix Load Balancing

It is common for larger N-tier systems to have clusters of front end Citrix servers, or server farms.

Here the routing of user sessions is done by the Citrix's XenApp Technology. The system attempts to balance load equally often in accordance with the Load Evaluator rule set configured by the Administrator.

The XenApp Server decides where each new user session should be routed through interpretation of a load score relayed for each Citrix server in the cluster.

The address of the Citrix server for the client to connect to is specified by one or more of the fields found inside the published application block of the ICA file. ICA files are generated dynamically on selection of the published application.

To obtain near equal distribution of Citrix Virtual Users sessions across the Citrix cluster, it is usually beneficial to connect each Citrix Virtual User on a round-robin basis.

The Address property can be used for exactly this purpose as it will override the remote address specified in the ICA file and provides a way of routing Citrix Virtual User connections across the cluster.

This will require the creation (or import) of a Data Table file containing the addresses of all Citrix servers in conjunction a Test-level data binding applicable to all Citrix Virtual User groups in the Test.

Create the data table file and setup the test level data binding as follows;

  1. Right-click the Data source folder node in the Eggplant Performance Studio project tree and select New data source. Select Create new data table file and click Next.

  2. Give the data table the name Addresses. The file type you select doesn't matter. The table contains a single column of data and no delimiters, so the only difference the file type will make here is to the file extension.

  3. Open the data table file and enter each of the Citrix server IP addresses on a new line in the file. Give the file the heading Address as shown below:

  4. Save the changes you made to the Addresses data table file.

  5. Click the Tests node the in Eggplant Performance Studio project tree. Select a test, then click the Data tab in the center pane.

  6. Click Add Data Binding. The Create a data binding window opens.

  7. Select a data source, then click Next.

  8. Select the Create a binding to multiple virtual user groups radio button. Select the virtual user groups to which you want to bind the data. Click Next.

  9. From the Data table options screen, make sure the Each row in the table can be used by more than one virtual user checkbox is selected. Click Finish.

  10. Save the changes made to the project.

Citrix Test Users will be connected to each Citrix server in a round robin fashion.