Example RESTful web service implemented with Spring Boot, Spring WebFlux and Reactor.
This is the version with Spring WebFlux replacing asynchronous JAX-RS and with Reactor replacing RxJava.
Please refer to the "before" branch for the version without asynchronous JAX-RS and RxJava.
Please refer to the "rxjava-after" branch for the version with asynchronous JAX-RS and RxJava.
To load-test this application, first start the RestExampleApplication and then start the load-tests using mvn gatling:test.
The load-test report can be found in the target/gatling directory.
The original articles for which this example program was developed can be found here:
https://www.ivankrizsan.se/2016/11/19/rest-with-asynchronous-jersey-and-rxjava-part-1/
https://www.ivankrizsan.se/2016/11/25/rest-with-asynchronous-jersey-and-rxjava-part-2/
https://www.ivankrizsan.se/2016/12/17/rest-with-asynchronous-jersey-and-rxjava-part-3/
https://www.ivankrizsan.se/2016/12/29/rest-with-asynchronous-jersey-and-rxjava-part-4/
The Spring WebFlux and Reactor version is covered in this article:
https://www.ivankrizsan.se/2019/12/08/rest-with-spring-webflux-and-reactor/
To view metrics of the application in Prometheus, do the following:
- Edit the prometheys.yml configuration file and insert the IP address of the computer on which the rest-example application is running.
- Start Prometheus and Prometheus Alertmanager by entering docker-compose up in the terminal.
- Open the URL http://localhost:9090 in a browser.