Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Performance improvement using reactive approach #8

Open
Arooba-git opened this issue Sep 11, 2024 · 0 comments
Open

Performance improvement using reactive approach #8

Arooba-git opened this issue Sep 11, 2024 · 0 comments

Comments

@Arooba-git
Copy link

Hello 🙂,

I wanted to express my gratitude for developing and maintaining this web app, as well as for providing such detailed and easy-to-follow instructions. By adhering to your guidelines, we were able to run the project successfully.

With the rising interest in Java application development—particularly in areas like reactive programming and virtual threads—we've been evaluating open-source projects to compare performance using three approaches: imperative, reactive, and virtual threads. Our analysis focused on metrics such as CPU and memory usage, as well as request concurrency.

Thanks to your comprehensive documentation, we were able to test your project across all three paradigms. The findings demonstrated significant performance gains with the reactive programming model, as highlighted in the table below:

Metric Original Reactive
Memory Usage (MB) 3023.7 667.5
CPU Usage (%) 7.7 0
Throughput (requests/sec) 3877.6 13743.1
Latency (longest processing time) 3453.3s 7873.6s
Requests Passed (%) 40.8 79.3

As part of this research, we’ve also developed a simplified version of your project using WebFlux, which features a single demonstration endpoint. You can check out this demo and compare its performance with the original project here.

Profiler used: JMeter

Best regards.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant