Devoxx Poland 2019
from Monday 24 June to Wednesday 26 June 2019.
CTO at Dexels, Senior Architect at Sendrato, and still like to get my hands dirty. Frequent conference speaker. Reactive and non-blocking fan. Trying to rid the world of blocking and polling since 2002
See also www.dexels.com
We’ve been using JDBC to access our SQL databases for decades, but JDBC is a blocking API. Blocking API’s can be problematic at times, and after years of promises, a ‘non blocking JDBC’ is on the horizon.
When your application queries a database using JDBC, the thread used to make that query blocks: It simply waits while your database processes this request. It’s simple. It’s easy to reason about, but ultimately it can be a big waste of threads, and with that memory and CPU. For NoSQL databases like MongoDB and Cassandra non-blocking drivers are well established, but for SQL databases we’re generally stuck with JDBC i.e. blocking threads. There has been talk about some kind of ‘non-blocking’ JDBC for years, and finally it is happening. Oracle announced ADBA, it’s in incubation now, and Pivotal announced R2DBC, also experimental. We’ll talk about how we ended up with two (proposed) standards, and how it affects your performance and code.