Scaling the update part of the Trade workload

In this test case, the update part of the Trade workload was scaled.

Updates from data are the critical case for caching, because the caching mechanism has to make sure that data is consistent system wide in all caches and variables. Normally 14% of the transactions in the Trade workload require a data base update.

The Trade transactions in the workload are analyzed in Table 1.
Table 1. Trade transactions in the workload
Transaction type Percent Requires DB update
Update account 4 Yes
Buy or sell stock 8 Yes
Register new user 2 Yes
Total for updates 14
Home page 20 No
Account 10 No
Portfolio 12 No
Quotes 40 No
Logoff 4 No
Total for read only 86
In this test case, the data base update activity was scaled from 0% to 14% in increments of 2%. The number of workload clients was set to 65 for all tests and the percent of update transactions was varied according to the data in Table 2.
Table 2. Percent of update transaction scaling
Transaction type Test case transaction update %
Update account 0 0 2 4 4 4 4 4
Buy or sell 0 0 0 0 2 4 6 8
Register new user 0 2 2 2 2 2 2 2
Total % of updates 0 2 4 6 8 10 12 14

The environment with the WebSphere® Proxy Server (PS) was used for these tests. The initial test, with the number of virtual CPUs (vCPUs) set to one for the Proxy Server, indicated that the Proxy Server CPU utilization was a bottleneck. Additional tests were performed with the number of virtual CPUs set to two from the Proxy Server (without changing the amount of physical CPUs).

All runs were done with the cache configuration described in Table 3.
Table 3. Cache definitions - Scaling the update part of the Trade workload
DynaCache size Caching mode Servlet caching Replication domain Replication type
10000 Distributed Map Disabled Entire domain Not shared
Figure 1 illustrates the throughput when scaling the update part of the Trade workload. Figure 2 illustrates the CPU utilization when scaling the update part of the Trade workload.
Figure 1. Throughput - Percent of update transaction varied, WebSphere proxy server CPUs set to one and two
This figure shows the throughput for percent of update transaction varied with WebSphere proxy server CPUs set to one and two
Figure 2. CPU utilization - Trade Workload scaling of update transactions.
This figure shows the CPU utilization of Trade workload scaling of update transactions, WebSphere Proxy Server (1 and 2 virtual CPUs (vCPU) ).

Observations

As the percentage of update transactions in the Trade workload is increased from 0% to 14%, the throughput decreases, as expected. Increasing the number of vCPUs for the Proxy Server guest produced a significant throughput improvement until the 8% update case was reached.

As the percent of update transaction increases, the overall CPU utilization increases to its maximum observed value at the 14% case.

Conclusion

For this workload environment, enabling WebSphere DynaChache results in the highest performance as the amount of update transactions are decreased, as expected.

If a workload transaction mix has a very small percentage of update transactions, enabling dynamic cache should produce a significant performance advantage because of the higher cache hit ratio.