You are viewing the documentation for Blueriq 17. Documentation for other versions is available in our documentation directory.
1 Introduction
Starting with release 11.0 Blueriq decided to introduce a forms performance report. Triggered by the new external session storage development this report doesn't serve solely the purpose of offering performance information to clients that use Blueriq forms exclusively (without any additional components like dashboards, process engine etc) but also offers us the possibility to compare and assess the response times for the memory and external session implementations.
Because generally forms tend to be lighter on the memory consumption than other components it was decided to simulate a higher user load. This method assures that the differences in response times are clearer and less circumstantial and helps us draw some conclusions on the use limitations in a certain given environment with some certain given settings. In this way we learned for instance that the Runtime is slightly faster with an inmemory session keeping but on the other hand it supports a lower amount of users.
See 11. Performance Tuning for a more in-depth analysis of Memory vs. Redis session store performance and performance tuning advice.
Returning to the user load it is important to say that the 2 attached reports are depicting a run with 450 threads (for the memory run) and a run with 800 threads respectively (for the redis run). Both runs are holding the load for 1 hour. As for the results themselves they are interpreted in the same study measurement way as the other Blueriq performance tests namely with the help of Apdex. For more information about Apdex, please see 03 Apdex method.
2 Reference Application
In order for us to obtain relevant test results we needed to have a Blueriq application very much similar to a real application in production. Thus we aimed at having as much elements as possible (required fields, conditional fields, field validations, file upload/download containers etc) but also a reasonable profile size. The reference application used for forms performance testing is a bank website where the user can either search and find the available ATMs in his area or apply for one of the three available loans.
The performance script carries the user from logging in, to searching for available ATMs (this is the step where 500 instances are created - each of them containing 5 attributes), applying for a loan, filling fields, switching pages, uploading and downloading files and eventually logging out of the application.
Application Flow
The permance script consists of the following steps in the main application flow:
Step | Name | Description |
---|---|---|
1 | Login | The user logs in with a username and password. |
2 | Start project | Start the application and display the Welcome screen |
3 | Open ATMs section | Switch to the Find Local ATMs page |
4 | Search ATMs | Creates 500 instances using the AQ_CsvConnectivityService and an external CSV file, then switches to the Confirm ATMs Found page. |
5 | Display Search Results | Opens the Display ATMs page where the previously created instances are displayed in an AQ_InstanceList with page size 20. |
6 | Go to the loan offers page | Navigates to the Loan Offers page. |
7 | Apply for prime offer | Updates an instance through the ‘AQ_InstanceUpdate’ service and navigates to the Loan Form is brought in. |
Application Interface
Screen | Content |
---|---|
Welcome | The welcome screen with 4 inline containers, 3 text items and 2 buttons. |
Find Local ATMs | A page with 2 inline containers, a text item and 2 buttons. |
Confirm ATMs Found | A page with 2 inline containers, a text item and 2 buttons. |
Display ATMs | Displays the nearby ATMs using an AQ_InstanceList with page size 20. Also contains 2 inline contains and 2 buttons. |
Loan Offers | The page contains dozens of containers and text items, each of them having presentation or content styles assigned. |
3 Simulating application usage
TBD
4 Test environment
For the performance tests a typical hardware configuration is used that consists of two separate servers for the Runtime and JMeter. The specification of the test environment is described in the test reports.