Introduction
The purpose of JOC Cockpit performance tests is to verify for a given hardware/software system the maximum parallelism of user sessions and operations that will not cause delays and slowness.
- The JS7 - Self-Test - Getting Started article offers test cases for download.
- The JS7 - Performance Tests article summarizes performance tests per product.
- The JS7 - Running Performance Tests for JOC Cockpit article explains test case execution.
Any results from performance tests executed for Controller and Agent necessarily include JOC Cockpit, see JS7 - Performance Tests for Agents.
Performance tests specific for JOC Cockpit include
- verifying the maximum number of applicable, parallel user sessions,
- verifying performance of the JS7 - History Service and JS7 - Database for operations from parallel user sessions.
Test Metrics
Scenarios are based on increase of parallelism by iterations.
- Each iteration doubles the number of parallel user sessions and operations.
- White background numbers represent test parameters, blue background numbers represent typical test results that can be expected on average hardware.
- The performance test is executed for JOC Cockpit default settings of 512 MB heap space.
| Scenario | Iteration | User Sessions | Max. Start Time Delay | Test | ||||
|---|---|---|---|---|---|---|---|---|
| Base | Start | Stop | Parallelism | Total | Duration | Delay | Duration | |
| Low | 2 | 4 | 7 | Iteration 4: 16 | 240 | 46s | 0s | 3s |
Iteration 5: 32 | 0s | 5s | ||||||
Iteration 6: 64 | 2s | 10s | ||||||
Iteration 7: 128 | 5s | 17s | ||||||
| Medium | 2 | 8 | 9 | Iteration 8: 256 | 768 | 114s | 21s | 39s |
Iteration 9: 512 | 56s | 68s | ||||||
| High | 2 | 10 | 11 | Iteration 10: 1024 | 3072 | 414s | 129s | 135s |
Iteration 11: 2048 | 232s | 269s | ||||||
Explanations:
- Iteration:
- Iterations by default use base 2 and the power of the iteration: 2<iteration>
- An iteration of 4 means 24 and will start 16 parallel sessions.
- An iteration of 11 means 211 and will start 2048 parallel sessions.
- Each of the low, medium and high scenarios performs the indicated iterations.
- Iterations by default use base 2 and the power of the iteration: 2<iteration>
- User Sessions:
- The Parallelism indicates the number of parallel sessions per iteration.
- The Total gives the overall number of sessions with the iterations of the given scenario.
- The Duration per session is longer for higher parallelism to guarantee that sessions run in parallel for some time in case of delayed session starts.
- Max. Start Time Delay
- Numbers represent the delay between start times of parallely launched sessions per iteration.
- Larger delays indicate exhaustion of the underlying hardware/software system to start sessions in parallel.
- Test Duration:
- The duration is calculated from the earliest start time to the latest end time indicated by the JS7 - Order History.
Test Runs
The JS7 - Running Performance Tests for JOC Cockpit article explains test case execution.
The following chapters explain expectations and possible results per test scenario.
Performance Checks
Parallel Sessions
The number of concurrent user sessions in JOC Cockpit affects its performance.
The test is executed using JOC Cockpit default settings. Increasing the Java heap space can provide better results.
History Service Throughput
The History Service receives events for JS7 - Order State Transitions and for log output from the Controller. The History Service will collect such data and will write the data to the database.
- Performance of the JOC Cockpit is measured from API requests to the order history that return 1000 hits each, typically consuming <500ms.
- Performance of the databasse is relevant when selecting records in parallel to updating and inserting records from the History Service.
Resources
- JS7 - Running Performance Tests for JOC Cockpit
- JS7 - Performance Tests for Controller
- JS7 - Performance Tests for Agents