As a Citrix consultant , one question that every customer asks me is, “How many users can I get on this server?” This seems like a simple question, but traditionally has had some difficult ways of finding an answer. Thankfully, the latest XenApp5 Feature Pack now includes Load testing services, an easy, efficient and inexpensive way to create a reliable answer to the question.

In the past, there were two main ways of answering this question. One required expensive and complicated software (and a team of experts who can actually program it) while the other required a team of people flying around to remote sites during off-hours so they could simulate user tasks. Needless to say either method was time-consuming, resource consuming and cost way too much money. In addition, when there was a new version of the application or a new remote office, you had to start from scratch and start the process all over again. This process is now far more exact and much easier with load testing services.

There are only two parts to load testing services, the controller and the launcher. The controller is the brains of the operation, and tells the launchers (installed on desktops or workstations in the remote sites) what tests to run. The launchers open a session to XenApp hosted applications, published desktops, a direct connection to the XML Broker, or through Web Interface. Once you give the controller a user account name and password and a target XenApp farm, you hit the record button and record what activities the simulated user should do. If you want the user to open Microsoft Word and copy an image, type a bunch of text or compose a letter, you simply do that while recording and load testing services translates that into instructions. After distributing the launchers to their remote locations, hitting the play button within the controller will instruct them to replay those tests for however long it has been scheduled.

While the tests are running, load testing services can track a myriad of Perfmon counters which can then be used to see when the server is at its limit. By turning on such items as Total Processor Time and Thread Queue Length or Memory consumption and Pages Per Second, one can determine when the server is running out of resources. All of these statistics and many others are presented to the administrator in a simple graph and table which, once viewed, will show when the bottleneck occurs. XenApp Platinum edition customers can also use application performance monitoring to measure performance as well.

Hopefully, I’ve made load testing services sound really easy to use, because in fact it really is that easy and anyone who can start a session on a XenApp server can use it effectively. Of course there are ways to use variables and wildcards and best practices for more advanced use cases, and more information on those items can be found in whitepapers and recordings available on or the Citrix Knowledge Base.

New applications, new servers, new users and new offices are being deployed throughout pretty much every organization and figuring out the correct amount of capacity needed quickly and cheaply has been, and will continue to be, a top priority for every IT department. With the inclusion of load testing services in XenApp5 Feature Pack, Citrix has given us the most effective way I have seen to do this. I encourage you to test it out for yourself.

Want to learn more? Also, check out As always, let us know your thoughts, questions and feedback below.

This post is part of a multi-part series on XenApp 5 Feature Pack: