In Silk Performer 16.5, the whole pacing functionality has moved to the Workload Configuration dialog, where it now has its own dedicated tab. If you already have a good grasp of pacing, you'll also appreciate the enhanced user interface, which allows you to conveniently set up and manage your pacing settings. If you're not yet familiar with pacing, this blog article might be just the right opportunity for you to get started. We're going to explain the purpose of pacing, how it works, and we'll show you step by step how to set everything up in Silk Performer.
The purpose of pacing
First, let's discuss how pacing works and why you might want to consider using pacing in the first place. Suppose you are testing a web application and you want to find out if it can handle 5 transactions per second. How can you achieve the exact rate of 5 transactions per second in your load test? And how many virtual users would you configure to reach this rate? That's the point where pacing comes in. The purpose of pacing is to create a constant load, or more precisely, a steady rate of transactions. But how does Silk Performer achieve such a steady rate?
Steady transaction rates
Take a look at the graphic above. It shows three colored bars. The blue bar represents the goal transaction time, which you can set in Silk Performer. If you started a load test and the actual execution time of a transaction (which is represented by the green bar) was shorter than the goal transaction time, Silk Performer would automatically fill up the gap with a so-called pacing wait time (the red bar). This is done for every single transaction, and this way each transaction would have about the same duration, which is none other than a steady transaction rate. Based on this steady transaction rate, Silk Performer can tell you the number of virtual users you need to achieve the rate.
Setting a baseline
Let's take a look at an example and find out where in Silk Performer you can set the goal transaction time and the transaction rate. You can use an existing script or record a new one. I've recorded a simple, short script for this example. The important thing is to run a baseline test and set the baseline. If you don't set a baseline, you won't be able use the pacing feature later on, since you need some reference value.
So, click Find Baseline on the workflow bar and execute a baseline test. If you cannot see the Find Baseline button, right-click on the workflow bar and enable the full workflow bar. When the baseline run is complete, make sure that no errors occurred and click Set as baseline on the Baseline Summary page.
The pacing tab
Now, click Run Test on the workflow bar and click the Pacing tab. The table on the Pacing tab provides all important information. But before you move on, make sure that transactions per second is selected. Look out for the column Avg. Transaction Time. The value in this column is the reference value we got from the baseline test. Also note the columns Pacing (currently no pacing is configured), Avg. Goal Trans. Time, Goal Trans. Per Second, and Max VUsers. Once we've defined an Avg. Goal Trans. Time, we'll be able to also set the Goal Trans. Per Second, which again will enable Silk Performer to calculate the Max VUsers for us.
Let's click Configure pacing in the Pacing column to open the Configure pacing dialog. Select Wait time insertion and Avg. Goal Trans. Time, and specify a goal transaction time that is greater than the average transaction time from our baseline test. In my example, I specify 10 seconds.
When you click OK you can see that the Avg. Goal Trans. Time displays in the respective column and the Goal Trans. Per Second is now enabled. So, let's enter the value that was the initial key figure for this whole blog article: 5 transactions per second. Once you enter 5 and press Return on your keyboard, Silk Performer automatically calculates the Max VUsers, which is 50 in my example.
Let's quickly review what all these values mean: To achieve the load of 5 transactions per second, 50 virtual users are required, assuming that every 10 seconds each user starts a new transaction.
Executing the load test
Note that Silk Performer also calculates the required bandwidth for this load test and the given values. Also note that you can adjust the Max VUsers and that Silk Performer calculates the Goal Trans. Per Second in that case. Furthermore, you can now also adjust the Avg. Goal Trans. Time directly in the table. Silk Performer will always adjust the other values. When you're happy with your settings, click the Workload tab. Note that number of Max VUsers have automatically been transferred to this table. Adjust the settings in the table to your needs and then you can start the load test.
When the load test is completed the Load Test Summary page displays. And here you can verify if the intended rate of 5 transactions per second has actually been reached.
Silk Performer's pacing feature allows you to achieve a steady rate of transactions and calculates the required number of virtual users. With just a few clicks you can set up a load test that is likely to produce some valuable information about the performance of your application.
Watch the Pacing video
You can also watch the pacing video and once again follow the above described worklow:
To learn more about all new features and enhancements Silk Performer 16.5 provides, take a look at the following blog posts:
- Released: Silk Performer 16.5
- Word Reporting
- Domain Filtering
- TrueLog Sections
- Recording File Uploads
The Silk Performer Help is another comprehensive source of information:
If this article was useful for you, leave us a comment or like it. We appreciate any of your feedback.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.