A tool to ease your work as a developer, not only regarding performance. Make your developer job easier.
📺 QuickPerf live demo (in French)
GET 200 http://localhost:8080/owners?lastName=
* [WARNING] N+1 select suspicion - 453 SELECT
GET 200 http://localhost:8080/owners/2/edit
* [WARNING] Heap allocation is greater than 10 000 000 bytes: 17 509 888 bytes
💡 You can use the performance diagnostic features during development or to help you diagnose the performance of a deployed application.
The generated tests ensure a non-regression on:
- functional behavior
- performance-related properties
You have many things to do or think about in your daily job. You may not have enough time to improve the following issues that would ease your daily job or improve the user experience. QuickPerf live could help you!
Are you not confident that your new development will not break another feature? QuickPerf live allows you to generate automated tests! More here.
QuickPerf live can generate an automatic test reproducing the N+1 select. You can use it to investigate the cause of the N+1 select. The produced test will also ensure non-regression on the absence of N+1 select as well as on the functional behavior.
QuickPerf live allows you to measure the heap allocation generated by each HTTP call.
Finding out what types of business data a web service handles may be challenging. Sometimes, as a developer, we may also be tempted to load more data than necessary to implement a business behavior, potentially impacting performance. In both cases, QuickPerf live can help you by displaying the selected columns from the database (cf. Selected columns part in Database diagnostics), or creating the database dataset of a generated web service test.
QuickPerf live works today for web applications developed with Spring Boot 2.
⚠ Today, we don't recommend enabling the tool in a production environment.
<dependency>
<groupId>org.quickperf</groupId>
<artifactId>quick-perf-live-springboot2</artifactId>
<version>0.12</version>
</dependency>
From a yaml file:
quickperf:
enabled: true
From a .properties file:
quickperf.enabled=true
You can configure the performance diagnostics and the test generation with properties. You can also update the configuration after the application startup with the help of MBeans.
QuickPerf MBeans are unavailable? Read this.
logging.level.org.quickperf.*=INFO
Create Spring beans implementing QuickPerfHttpCallInfoWriter
or QuickPerfHttpCallWarningWriter
interfaces.
You can use this feature to generate a performance diagnostic report or record the history of performance-related properties.