For the uninitiated, Ratpack itself consists of a series of Java libraries. Built on a Netty event-driven networking engine with Java 8, Google Guava and Reactive Streams, it allows for modular, highly adaptive HTTP applications.
In an interview this summer, project developer Luke Daley explained that the primary goal behind this project was to develop a “modern” solution for developing HTTP apps on the JVM in the era of cloud. With this in mind, Ratpack is designed to maximise efficiency, and enables web apps to perform “without generous resource allocations.”
Whilst Daley admits that Ratpack’s non blocking IO isn’t without its challenges, another goal with this tool is to make non blocking “more approachable and safe,” making it more cost effective and extending its benefits to a wider range of solutions.
Originally intended to be a port to Groovy of the popular Ruby framework Sinatra (back in 2012 when micro frameworks were all the rage), over time, Ratpack has become a fully fledged Java 8 web framework, retaining optional “first class” support for Groovy which takes advantage of the latest strong typing and static compilation features of language.
By and large, the features this release comes packing are the same as those of Ratpack’s RC1, which was pushed out back in August. Whilst this is a nice milestone to arrive at, for the Ratpack team, “it’s just a milestone.” What the developers hope is that with a newly stabilised API in place, it’ll make it easier to promote the technology and, in as the user base grows, help to refine and improve it.
For all the latest changes to the tool, check out the notes for the first release candidate. And if you’re eager to investigate all the nooks and crannies of Ratpack, there’s a raw and unedited O’Reilly title, “Learning Ratpack,” which is available as of this month.