Panoramica
Un gateway API è uno strumento di gestione interfacce di programmazione delle applicazioni (API) che si situa tra un client e una raccolta di servizi back end.
Un gateway API si comporta come un proxy inverso per accettare tutte le chiamate API, aggregare i vari servizi richiesti per gestirle e restituire i risultati appropriati.
Perché usare un gateway API
La maggior parte delle API enterprise vengono distribuite tramite gateway API. Solitamente, i gateway API gestiscono attività comuni utilizzate su un sistema di servizi API, come autenticazione utente, limitazione di velocità e statistiche.
Di base, un servizio API accetta una richiesta remota e restituisce una risposta. Ma quando si ospitano API su larga scala, gli scenari che si possono verificare sono svariati e gestirli può essere complesso.
- Per evitare che le tue API vengano sovrasfruttate o usate senza le debite autorizzazioni, hai installato un servizio di autenticazione e limitazione della velocità.
- Per capire in che modo le persone usano le tue API, hai aggiunto strumenti di analisi e monitoraggio.
- Se hai monetizzato le tue API, vorrai collegarle a un sistema di fatturazione.
- Se hai adottato un'architettura basata sui microservizi significa che una singola richiesta potrebbe richiedere chiamate a decine di applicazioni diverse.
- Nel tempo, aggiungerai alcuni nuovi servizi API e ne eliminerai altri, ma dovrai garantire ai tuoi clienti di poterli reperire sempre nello stesso posto.
Offrire ai tuo clienti un'esperienza semplice e affidabile, a prescindere da questa complessità, è l'aspetto più impegnativo. Un gateway API ti offre un modo per disaccoppiare l'interfaccia del client dall'implementazione back end. Quando un client invia una richiesta, il gateway API la suddivide in più richieste, le indirizza dove necessario, elabora delle risposte e tiene traccia di ogni operazione.
Il ruolo dei gateway API nella gestione delle API
Un gateway API costituisce una parte del sistema di gestione delle API. Il gateway API intercetta tutte le richieste in entrata e le invia attraverso il sistema di gestione delle API, che elabora una serie di funzioni necessarie.
In base al tipo di implementazione, il gateway API eseguirà svariate funzioni distinte. Tra le più comuni troviamo autenticazione, routing, limitazione di velocità, fatturazione, analisi, policy, avvisi e sicurezza.
In che modo un gateway API supporta ambienti DevOps e serverless
Nelle organizzazioni che hanno adottato un approccio DevOps, gli sviluppatori usano i microservizi per creare e implementare applicazioni in modo rapido e iterativo. Le API rappresentano la modalità di comunicazione dei microservizi più diffusa.
Inoltre, uno sviluppo cloud moderno, incluso il modello serverless, dipende dalle API per il provisioning dell'infrastruttura. Un gateway API ti consente di implementare funzioni serverless e gestirle.
In generale, il ruolo delle API acquista maggiore importanza parallelamente alla crescente necessità di integrazione e interconnettività. L'aumento della complessità e dell'utilizzo di un'API giustificano l'imprescindibilità di un gateway API.