RESTHeart

API Server per MongoDB e framework per lo sviluppo rapido di API

project

Server

technologies

Collegamento API
Mongo DB
AWS DocumentDB
Azure Cosmos DB

releases

First 2014

Cos'è RESTHeart?

RESTHeart è un framework per microservizi con API istantanee per il database MongoDB. Con questo progetto volevamo dare ai programmatori la possibilità di semplificare i processi di sviluppo e l’interazione tra web o mobile application e il database. Questa la volontà che ci ha spinto a creare RESTHeart: l’idea che prodotti e servizi di oggi e di domani debbano essere agili, snelli, alla portata di tutti.

visita restheart
Used Technology

Le tecnologie

La dedizione a questa piattaforma ci ha portati a costruire un sistema che fosse utile per molte necessità
Content Management, per immagini, commenti, tag, categorie, dati geolocalizzati, audio e video, disponibili tramite REST API
Open Data e IoT si sono rivelate delle perfette applicazioni, i dati caricati sono accessibili tramite REST API
Grazie al supporto Geospatial di MongoDB, è possibile immagazzinare semplici dati GeoJSON, senza il bisogno di codifiche lato server, rendendo istantaneamente disponibili le informazioni per servizi come Google Maps.

Gli obiettivi

Quando ci si approccia alla creazione di un nuovo prodotto software per il web, ci sono delle fasi di sviluppo dalle quali non si può prescindere che serviranno per il funzionamento di ciò che si sta crando. Queste, causano sempre un rallentamento nella progettazione e molto spesso vengono sviluppate utilizzando metodi ormai obsoleti, che abbassano le prestazioni e le potenzialità dell’intera piattaforma.
Da qui la sfida: come semplificare le connessioni tra i dati presenti sulle pagine web ed il database?

Uno dei punti di forza di Softinstigate è l'attenzione al time-to-market. Essere veloci nella realizzazione di prodotti complessi e rispettare le esigenze del cliente è un focus importante della nostra filosofia.

Come trasmettere il nostro approccio e renderlo disponibile a qualunque programmatore?

Creando un backend per le app web e mobile, che semplifichi radicalmente sviluppo e distribuzione! Perchè progettare da zero la tua piattaforma se ti puoi avvalere di un servizio completamente libero che sfrutta le più recenti e performanti tecnologie che internet ha da offrirci?
L'obiettivo era costruire un sistema stabile, flessibile ed intuitivo, per permettere ad ogni programmatore di creare app moderne installando il suo backend già completamente interconnesso, nel giro di pochi minuti.

$ http GET https://beta.mrest.io/demo/messages?filter='{"from":"Bob"}'\&pagesize=2 key:demo

    HTTP/1.1 200 OK
    # other response headers omitted
    
    [
        {
            "_id": {
                "$oid": "5c50963e477870eb8258fa68"
            }, 
            "from": "Bob", 
            "message": "was here", 
            "timestamp": {
                "$date": 1548785214114
            }
        }, 
        {
            "_id": {
                "$oid": "5c50962f477870eb8258fa54"
            }, 
            "from": "Bob", 
            "message": "RESTHeart rocks", 
            "timestamp": {
                "$date": 1548785199983
            }
        }
    ]
RESTHeart RESTHeart

La soluzione

Per prima cosa abbiamo pensato alle tecnologie che avremmo potuto utilizzare per un progetto così ambizioso. MongoDB si è rivelato il nostro partner ideale.

Sfruttando la sua natura document-oriented, abbiamo potuto creare una mappatura automatica, che collegasse dati a risorse HTTP. Attraverso una semplice e veloce REST API, per leggere e scrivere i dati tramite chiamate HTTP, il prodotto che abbiamo sviluppato consente di eseguire e distribuire micro-servizi alla velocità di un click.

Questo cosa comporta? Far sì che tutti gli sviluppatori che utilizzeranno questo prodotto non solo avranno un considerevole risparmio sui tempi, ma consegneranno qualcosa di scattante, in cui ogni singolo servizio è separato ed interconnesso agli altri. Questo permette di manipolare ogni parte del prodotto finito, senza intaccare il resto di ciò che è stato fatto.

Ma perchè fermarsi alle fondamenta del progetto software? Ogni singola funzione che il programmatore voglia implementare è stata resa disponibile, semplicemente aggiungendo singoli plug-in Java. Questo ha reso RESTHeart una piattaforma di sviluppo a 360°.

Video introduttivo su RESTHeart in italiano

Vuoi saperne di più?