Baratine's nonblocking model allows you to code simple APIs and have them function as high performing web services.

The standard REST Bookstore Web Service in Baratine benchmarked against the top Spring/Java EE implementation has...

✔ Less lines of code
✔ Automatic request batching
✔ Simple and clean asynchronous APIs
✔ Automatic persistence (No database code)

Our Inspiration: The Long Road Taken

When we first started Baratine, it was just an in-memory service platform backed by a queue. The problem Baratine was trying to solve was simple. It’s incredibly inefficient having to touch the database upon every read or update request. Baratine revolutionizes the traditional model by keeping data in memory. You only need to worry about updating your in-memory dataset. Baratine is responsible for persisting your data to the database at set intervals. In effect, Baratine takes the database out of the operational critical path. The in-memory data becomes operational data that it is live and always ready-to-use.

Based on this simple idea, we started to build out Baratine over the years. Baratine has grown to be a complete reactive platform for web services. But the road getting there was not easy. To gauge user enthusiasm for a radically new model, we presented Baratine at several Java User Groups across the county. Based on feedback, we had to simplify Baratine’s programming model and scale back Baratine’s clustering features. In the end, it was worth the time and effort to be able to present a refined programming model for a v1.0.0 release.