All Projects → quick-perf → Quickperf

quick-perf / Quickperf

Licence: apache-2.0
QuickPerf is a testing library for Java to quickly evaluate and improve some performance-related properties

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Quickperf

Jplusone
Tool for automatic detection and asserting "N+1 SELECT problem" occurences in JPA based Spring Boot Java applications and finding origin of JPA issued SQL statements in general
Stars: ✭ 91 (-60.61%)
Mutual labels:  microservice, sql, orm, hibernate, jdbc, spring-data-jpa, spring-boot, jvm, performance-analysis, performance-testing
doc
QuickPerf documentation: https://github.com/quick-perf/doc/wiki/QuickPerf
Stars: ✭ 22 (-90.48%)
Mutual labels:  jvm, jdbc, junit, hibernate, performance-analysis, profiling, spring-data-jpa, performance-testing
Angularjs Springmvc Sample Boot
A RESTful sample using Spring Boot, Spring MVC, Spring Data and Angular/Bootstrap.
Stars: ✭ 309 (+33.77%)
Mutual labels:  hibernate, spring-data-jpa, spring-boot, spring
Java Spring Cloud
Distributed tracing for Spring Boot, Cloud and other Spring projects
Stars: ✭ 326 (+41.13%)
Mutual labels:  microservices, jdbc, spring-boot, spring
Myperf4j
High performance Java APM. Powered by ASM. Try it. Test it. If you feel its better, use it.
Stars: ✭ 2,281 (+887.45%)
Mutual labels:  microservices, performance, performance-analysis, profiling
Sqlhelper
SQL Tools ( Dialect, Pagination, DDL dump, UrlParser, SqlStatementParser, WallFilter, BatchExecutor for Test) based Java. it is easy to integration into any ORM frameworks
Stars: ✭ 242 (+4.76%)
Mutual labels:  sql, orm, jdbc, spring-boot
Spring Petclinic Rest
REST version of the Spring Petclinic sample application
Stars: ✭ 257 (+11.26%)
Mutual labels:  hibernate, jdbc, spring-data-jpa, spring
Jooq
jOOQ is the best way to write SQL in Java
Stars: ✭ 4,695 (+1932.47%)
Mutual labels:  sql, orm, hibernate, jdbc
Mini Platform
Mini-Platform致力于更简洁易用的轻量级微服务治理平台。
Stars: ✭ 45 (-80.52%)
Mutual labels:  microservices, microservice, spring-boot, spring
Junitperf
⛵️Junit performance rely on junit5 and jdk8+.(java 性能测试框架)
Stars: ✭ 86 (-62.77%)
Mutual labels:  performance, performance-analysis, performance-testing, junit
Spring Microservice Sample
Spring Boot based Mircoservice sample
Stars: ✭ 199 (-13.85%)
Mutual labels:  microservice, spring-data-jpa, spring-boot, spring
Jeddict
Jakarta EE 8 (Java EE) & MicroProfile 3.2 application generator and modeler
Stars: ✭ 358 (+54.98%)
Mutual labels:  microservices, sql, orm, hibernate
Hibernate Springboot
Collection of best practices for Java persistence performance in Spring Boot applications
Stars: ✭ 589 (+154.98%)
Mutual labels:  sql, hibernate, jdbc, spring-boot
Java Interview
At the beginning, it was the repository with questions from Java interviews. Currently, it's more like knowledge base with useful links.
Stars: ✭ 114 (-50.65%)
Mutual labels:  microservices, hibernate, spring-boot, spring
Gemini
Model Driven REST framework to automatically generate CRUD APIs
Stars: ✭ 138 (-40.26%)
Mutual labels:  microservices, microservice, spring-boot, spring
Reactive Ms Example
An educational project to learn reactive programming with Spring 5
Stars: ✭ 157 (-32.03%)
Mutual labels:  microservices, spring-boot, spring
Speedracer
Collect performance metrics for your library/application.
Stars: ✭ 1,868 (+708.66%)
Mutual labels:  performance, performance-analysis, performance-testing
Biking2
This is the source code of http://biking.michael-simons.eu
Stars: ✭ 162 (-29.87%)
Mutual labels:  sql, spring-boot, spring
Hotspot
The Linux perf GUI for performance analysis.
Stars: ✭ 2,415 (+945.45%)
Mutual labels:  performance, performance-analysis, profiling
Java Specialagent
Automatic instrumentation for 3rd-party libraries in Java applications with OpenTracing.
Stars: ✭ 156 (-32.47%)
Mutual labels:  jdbc, spring-boot, spring
QuickPerf

QuickPerf is a testing library for Java to quickly evaluate and improve some performance-related properties


Maven Central    Reproducible Builds    License    Build Status    @QuickPerf    YouTube


📙 Documentation

Annotations

👉 Core

👉 JVM

👉 SQL

more...

Frameworks and Test Frameworks

👉 Spring

more...

👉 JUnit 4

👉 JUnit 5

👉 TestNG

more...

Frequently Asked Questions

more...

Usage

JVM annotations

    @MeasureHeapAllocation
    @HeapSize(value = 1, unit = AllocationUnit.GIGA_BYTE)
    @Test
    public void execute_batch() {
        ...
    }

📙 All the JVM annotations    🔎 Examples with JUnit4, Junit5, TestNG    🔎 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    🔎 Spring Boot & JUnit 4    🔎 Spring Boot & JUnit 5

Talks and videos

English

French

Something to ask us?

📧 [email protected]

💬 Want to chat with us? Join us on gitter

Do you prefer to use a Github issue to ask a question? Create a question issue

Show your support

Please ⭐ this repository or Tweet 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
Jean Bisutti

💻 📖 🎨
💡 👀 📢
guiRagh
Guillaume Raghoumandan

💻
Patrice CAVEZZAN
Patrice Cavezzan

💻 🚇 📖
Alexandre Blanchard
Alexandre Blanchard

🐛 💻
Eric McDowell
Eric McDowell

💻
Jan Krüger
Jan Krüger

💻
Loïc Mathieu
Loïc Mathieu

💻 💡 📖
Daniel Bentley
Daniel Bentley

🚇
Gaurav Deshpande
Gaurav Deshpande

rdm100
rdm100

📖
Artus de Benque
Artus de Benque

🐛 💻
Minh-Trieu Ha
Minh-Trieu Ha

💻
Bakary Djiba
Bakary Djiba

💻
C Faisal
C Faisal

💻
Thami Inaflas
Thami Inaflas

💻
José Paumard
José Paumard

💻
Edward Rose
Edward Rose

💻
Ubaid ur Rehman
Ubaid ur Rehman

💻
Giuseppe B.
Giuseppe B.

💻
Fabrice
Fabrice

💻 📖
Navneet Kumar
Navneet Kumar

💻
Charles Sabourdin
Charles Sabourdin

📖
Mohamed Karaga
Mohamed Karaga

🐛 💻
Hervé Boutemy
Hervé Boutemy

📦
emoji key

Sponsors

Many thanks Zenika for sponsoring this project!

with love by zenika

License

Apache License 2.0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].