'Is Servlet-based Spring MVC stack becoming obsolete with WebFlux?

I am currently struggling with choosing between the Servlet-based MVC stack and the newer reactive WebFlux stack for a new Spring Boot - based project. I know for sure that I won't be needing the scalability benefits that the WebFlux model brings, so the added complexity that reactive programming and learning the Reactor API etc. brings with it does not seem warranted. Also I wouldn't want to lock myself out of being able to use JPA which doesn't play nice with WebFlux. Even though I'll probalby go for a simpler data access API like Spring Data JDBC / R2DBC, I'd like to keep options open.

The only thing I am unsure about is to what extent the traditional Servlet stack can be considered future proof. I would imagine that maintaining two separate web stacks that basically do the same thing is not something the community is keen on doing indefinitely. On the other hand, I can see my application have a lifespan of at least 10 years, maybe much longer. So if it were to outlive the underlying stack, it would have to be at least partially rewritten at some point, or become yet another piece dreaded legacy code.

Any thoughts on that? Are my fears about the long-term future of the Servlet stack unfounded? Or should I bite the bullet and go with WebFlux even if it means higher development cost with no short-term customer benefits?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source