Understanding Reactive types

Following previous Reactive Spring and Reactor Core 3.0 blog posts, I would like to explain why Reactive types are useful and how they compare to other asynchronous types, based on what we have learned while working on the Spring Framework 5 upcoming Reactive support.

Why using Reactive types?

Reactive types are not intended to allow you to process your requests or data faster, in fact they will introduce a small overhead compared to regular blocking processing. Their strength lies in their capacity to serve more request concurrently, and to handle operations with latency, such as requesting data from a remote server, more efficiently. They allow you to provide a better quality of service and a predictable capacity planning by dealing natively with time and latency without consuming more resources. Unlike traditional processing that blocks the current thread while waiting a result, a Reactive API that waits costs nothing, requests only the amount of data it is able to process and bring new capabilities since it deals with stream of data, not only with individual elements one by one.

Read more...

This Week in Spring - April 19th, 2016

Welcome to another installment of This Week in Spring! This week I’m in Stuttgart and Mainz, Germany and Paris, France, speaking to customers and at the JAX conference, then it’s off to Paris, France, to speak at the Devoxx France edition. If you’re around in any of these places don’t hesitate to reach out I’d love to say hello.

Also, tonight, I’ll be joining my friends from industry (Daniel Bryant, Markus Eisele, and Simon Maple) for the ZeroTurnaround webinar, Microservices for the Enterprise. There are already more than 3,000 people registered and I hope to see you there, as well!

Read more...