Imperative code eats threads at the pace of incoming requests while Software is eating the world. This post discusses the assumptions for reactive programming on the JVM and what this means for integrations – in particular, relational databases.

The motivation to come up with a post is the constant increase in reactive programming adoption while some major building blocks are not yet available – in particular, the question: What about relational databases?

Read more ...

The Lettuce driver project graduates after three years now to a top-level project.


It has been three years now since I took over the Lettuce driver project whereas I wanted initially just fix a bug – so to say scratch my own itch I had in an other project. I published Lettuce under biz.paluch.redis:lettuce in June 2014 for the first time, and so I became the maintainer of Lettuce. The original driver was used to be quite popular until its maintenance stopped in 2013 and adoption of my fork began slowly.

Read more ...

R2DBC is an endeavor to bring a reactive programming API to relational data stores and stands for Reactive Relational Database Connectivity. It was first announced at SpringOne Platform 2018. I’m happy to announce my R2DBC tour across Java User Groups in Germany, Switzerland, and Austria. I will explain what R2DBC is, how it was founded and what to expect from a reactive relational database integration. We will speak about the SPI, various drivers, and about Spring.

Read more ...

Heckenlights is an interactive Christmas lights installation that can be controlled online by just visiting Heckenlights consists of over 3000 LED lights that are controlled via MIDI in 12 tracks. Each MIDI note switches the lights on and off.

It all started in 2012 with the idea to control a Relay with MIDI and lead to what it is today. Now, this season is the last one for Heckenlights. It’s been a great fun building Heckenlights and even more stepping outside, opening on a smartphone and triggering the lights to play.

I’m moving next year to a new house. Heckenlights (originating from Heckenpfad, the address I live) is no more appropriate then.

You can see and operate Heckenlights until Jan 6th, 2017 between 5 pm and 10 pm (CET). After that date, it will be shut down.


Redis Streams have made it into Redis’ unstable branch since the beginning of this year, and the first clients start with the adoption of Redis Streams APIs. That makes it an excellent time to take a look what Redis Streams provide and how you can use them from a client perspective.

Read more ...

Redis is a data store supporting over 190 documented commands and over 450 command permutations. The community supports actively Redis development; each major Redis release comes with new commands. This year Redis was opened up for 3rd party vendors to develop modules that extend Redis functionality. Command growth and keeping track with upcoming modules are challenging for client developers and Redis users.

Read more ...

After a 13 months development phase and 208 solved tickets, it is my pleasure to announce general availability of Lettuce 5.0. This is a major release coming with several breaking changes and new interesting features and Java 9 compatibility.

Get the release from Maven Central


or download the release bundle from GitHub.

Read more ...

I just released lettuce 4.2.2.Final.

This is a bugfix release that fixes several issues. Updating is recommended for
setups with frequent reconnects or frequent cluster topology changes during runtime.

Read more ...

I released today logstash-gelf 1.11.1. This release fixes a bunch of bugs and brings minor enhancements.

Read more ...

This post explains the use of a pooled GZIP OutputStream. The initial motivation were performance measurements of the GZIP'ing inside of logstash-gelf.

Read more ...