The origins of RESTHeart

Maurizio Turatti
Jun 11, 2019 · 5 min read

Introduction

In 2014 we had long realized that both application servers and frameworks force people to invest a lot of time in their configuration and maintenance, comparing to what is usually invested in the implementation of actual functionalities.

What RESTHeart actually does, in a minute

RESTHeart is a standalone server-side microservice (by default, it’s distributed as a Docker image) which connects to MongoDB database and immediately exposes all of MongoDB’s capabilities through a complete REST API, which allows to read and write JSON messages and binary data via HTTP.

Developers don’t need to write a single line of backend code to serve data and content to Mobile Apps and Angular, React, Vue or other Single Page Application frameworks.

RESTHeart’s high-level data flow.

In most scenarios RESTHeart can be the perfect server-side backend for Mobile and Web applications, so that frontend developers can focus on building User Interfaces.

A bit of history: the death of SOAP Web Services

While we started developing our product, the industry was already abandoning Web Services based on SOAP + XML to move towards simpler and decidedly Web-oriented models, namely REST + JSON via HTTP protocol.

The collapse of SOA

Service Oriented Architecture (SOA) promised to revolutionize the relationship between the business and the technological world. The goal of SOA was to conceptually break down the application domain into “business services” with a direct functional meaning, providing tools that would allow even non-technical people to orchestrate these services “easily”.

The REST architectural style becomes pervasive

Long before the final collapse of SOA, disappointed developers all over the world were already looking for paradigms to solve day-to-day programming problems more effectively. A simpler and more pragmatic architectural style was already emerging: the so-called Representational State Transfer (REST).

REST is the structural essence of the Web and fits perfectly in a world where the Web and Internet technologies have become pervasive.

The rise of NoSQL databases

Experience taught us that a high percentage of code was written and rewritten to always do the same things: reading, writing, searching and displaying data via HTTP protocol.

What really mattered to developers was that JSON objects on the client could eventually travel to and from the database as they were, without any transformation.

Microservices and JAMStack becoming popular

From the point of view of software design and deployment, we observed the contemporary rise of new architectural models that the Cloud had enabled, such as Microservices and JAMstack, which rationalize further the capabilities of continuous deployment of working software, at a fraction of the previous costs.

Conclusions

Taking into account these facts, trends, and ideas, we created and continue to tune our main product, RESTHeart, which meets our needs for simplicity and effectiveness, is natively Docker-ready, easily deployable in any Cloud or on-premises and is enabling us not to reinvent the wheel every time we develop an application, allowing us to build over solid foundations.

References

SoftInstigate Team

Random thoughts about Software Development, Technology…

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store