Description
YouTube
QuickPerf alternatives and similar libraries
Based on the "Performance analysis" category.
Alternatively, view quickperf alternatives based on common mentions on social networks and blogs.
-
JITWatch
Log analyser / visualiser for Java HotSpot JIT compiler. Inspect inlining decisions, hot methods, bytecode, and assembly. View results in the JavaFX user interface. -
jHiccup
jHiccup is a non-intrusive instrumentation tool that logs and records platform "hiccups" - including the JVM stalls that often happen when Java applications are executed and/or any OS or hardware platform noise that may cause the running application to not be continuously runnable.
InfluxDB - Purpose built for real-time analytics at any scale.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of QuickPerf or a related project?
README
QuickPerf is a testing library for Java to quickly evaluate and improve some performance-related properties
quickperf.io
π Documentation
Annotations
:point_right: Core
:point_right: JVM
:point_right: SQL
Frameworks and Test Frameworks
:point_right: Spring
:point_right: JUnit 4
:point_right: JUnit 5
:point_right: TestNG
Frequently Asked Questions
Usage
JVM annotations
@MeasureHeapAllocation
@HeapSize(value = 1, unit = AllocationUnit.GIGA_BYTE)
@Test
public void execute_batch() {
...
}
π All the JVM annotations :mag_right: Examples with JUnit4, Junit5, TestNG :mag_right: Heap allocation of Apache Maven
SQL annotations
@ExpectSelect(1)
@Test
public void should_find_all_players() {
...
}
[PERF] You may think that <1> select statement was sent to the database
But there are in fact <10>...
π£ You may have even more select statements with production data.
Be careful with the cost of JDBC roundtrips: https://blog.jooq.org/2017/12/18/the-cost-of-jdbc-server-roundtrips/
Auto-detection of Hibernate and Spring Data JPA:
π‘ Perhaps you are facing an N+1 select issue
* With Hibernate, you may fix it by using JOIN FETCH
or LEFT JOIN FETCH
or FetchType.LAZY
or ...
* With Spring Data JPA, you may fix it by adding @EntityGraph(attributePaths = { "..." })
on repository method: https://docs.spring.io/spring-data/jpa/docs/current/reference/ht
π All the SQL annotations :mag_right: Spring Boot & JUnit 4 :mag_right: Spring Boot & JUnit 5
Talks and videos
English
French
Something to ask us?
:e-mail: [email protected]
π¬ Want to chat with us? Join us on gitter
:octocat: Do you prefer to use a Github issue to ask a question? Create a question issue
Show your support
Please β this repository or if this project helped you!
Contributing
You are very welcome to contribute to QuickPerf! You can contribute in many ways. Some relatively easy things can be done. Other issues are more challenging. Each contribution is appreciated. Read our contributing guide to learn more.
Contributors
Many thanks to all our contributors!
Jean Bisutti
π»
β
π
π¨
π‘
π
π’
Guillaume Raghoumandan
π»
β
Patrice Cavezzan
π»
π
π
Alexandre Blanchard
π
π»
Eric McDowell
π»
Jan KrΓΌger
π»
LoΓ―c Mathieu
π»
π‘
π
Daniel Bentley
π
Gaurav Deshpande
β
rdm100
π
Artus de Benque
π
π»
Minh-Trieu Ha
π»
Bakary Djiba
π»
C Faisal
π»
Thami Inaflas
π»
JosΓ© Paumard
π»
Edward Rose
π»
Ubaid ur Rehman
π»
Giuseppe B.
π»
Fabrice
π»
π
Navneet Kumar
π»
Charles Sabourdin
π
Mohamed Karaga
π
π»
HervΓ© Boutemy
π¦
Franck Demeyer
π
π»
Oliver Hughes
π»
Hedley Proctor
π»
rsassi
π
π»
emoji key
Sponsors
Many thanks Zenika for sponsoring this project!
License
*Note that all licence references and agreements mentioned in the QuickPerf README section above
are relevant to that project's source code only.