Comparison between classic MVC and reactive Spring stack. Talking about asynchronous and reactive programming and comparing Spring MVC, Spring WebFlux on Java and Spring WebFlux on Kotlin coroutines.
Bonus: async app using Python and FastAPI.
GET /api/anime/{id}
- get one anime by id from Jikan API and one random movie from Mflix database
GET /api/movies?count={n}
- get N (0 < N ≤ 25) random movies
- spring-boot-java - classic servlet MVC app
- spring-webflux-java - reactive WebFlux app
- spring-webflux-kotlin - reactive Kotlin coroutine app
- python-async - async Python analogue
To start all these apps I use Docker Compose. There is common MongoDB image for all these apps and mongo-import image to preload data. Mongo import image uses bash script to load all the data to DB. And there is bash script to build all the Spring projects and start Docker Compose
Click (RUS)