October 2018
Intermediate to advanced
556 pages
15h 18m
English
During the investigation of persistence options with Spring Framework or even Java in general, we have looked through JDBC, JPA, Hibernate, EclipseLink, Spring Data JDBC, and Spring Data JDBC, and all these API and libraries are inherently synchronous and blocking. Even though they are almost always used for data retrieval from external services involving network calls, they do not permit non-blocking interactions. Consequently, all previously mentioned APIs and libraries conflict with the reactive paradigm. A Java thread that issues a query to the database is doomed to be blocked until the first piece of data arrives or a timeout occurs, and this is pretty wasteful from the perspective of resource management ...