-
Notifications
You must be signed in to change notification settings - Fork 28
Description
Hi 🙂,
Thank you for creating and maintaining this website, and providing clear guidelines. We successfully executed your project.
With the increasing popularity of Java app development, particularly reactive apps and virtual threads, we are conducting research on open-source projects to compare performance across three web development paradigms: imperative, reactive, and virtual threads. We evaluated performance in terms of CPU and memory usage, as well as request concurrency.
Thanks to your straightforward guidelines, we were able to run your project across all three versions. Our results show that reactive programming notably improved performance, as demonstrated in the table below:
| Metric | Original | Reactive |
|---|---|---|
| Throughput (requests/sec) | 2715.7 | 2766.2 |
| Memory Usage (MB) | 1477.1 | 376.4 |
| CPU Usage (%) | 29.2 | 14.2 |
| Latency (longest processing time) | 1.5s | 10s |
| Requests Passed (%) | 19.6 | 19 |
As a proof of concept, we have published a miniature version of your project using webflux, featuring only one endpoint for demonstration purposes. The demo project is available here if you would like to execute and compare the performance with the original.
Profiler used: JMeter
Test file: photo-HTTP-Request.jmx.zip
Kind regards.