Cos'è Apigee Edge?

Stai visualizzando la documentazione di Apigee Edge.
Vai alla documentazione di Apigee X.
informazioni

Apigee Edge è una piattaforma per lo sviluppo e la gestione di API. Affidando i servizi a un livello proxy, Edge fornisce un'astrazione o un'interfaccia per le API dei servizi di backend e offre sicurezza, limitazione di frequenza, quote, analisi e altro ancora.

Ad esempio, puoi visualizzare un webcast su come Walgreens utilizza le API e Apigee Edge per fornire un ricco ecosistema di app relativo a stampa fotografica, prescrizioni mediche e altri servizi offerti.

Crea il tuo primo proxy.

Accelerazione digitale

Questo video offre una rapida panoramica di come Apigee ti aiuta a evolvere in un'attività digitale.

Scegliere tra gestione dei servizi e gestione delle API

Questo video ti aiuta a comprendere le importanti differenze tra la gestione dei servizi e la gestione delle API. attività.

Rendere i servizi disponibili sul web

Oggi le aziende vogliono rendere disponibili i propri servizi di backend sul web, in modo che possano essere utilizzati dalle app in esecuzione su dispositivi mobili e desktop. Un'azienda potrebbe voler esporre servizi che forniscono informazioni su prezzi e disponibilità dei prodotti, servizi di vendita e ordinazione, servizi di monitoraggio degli ordini e qualsiasi altro servizio richiesto dalle app client.

Le aziende spesso espongono i servizi come un insieme di endpoint HTTP. Gli sviluppatori di app client inviano quindi richieste HTTP a questi endpoint. A seconda dell'endpoint, il servizio potrebbe quindi restituire all'app client i dati in formato XML o JSON.

Le app client che utilizzano questi servizi possono essere implementate come app autonome per un dispositivo mobile o tablet, come app HTML5 in esecuzione in un browser o come qualsiasi altro tipo di app in grado di effettuare una richiesta a un endpoint HTTP e utilizzare qualsiasi dato di risposta. Queste app potrebbero essere sviluppate e rilasciate dalla stessa società che ha esposto i servizi o da sviluppatori di app di terze parti che utilizzano servizi disponibili pubblicamente.

La seguente immagine mostra questo tipo di modello:

Vari tipi di app, come app mobile, app point of sale, partner e app web, si connettono a servizi di backend come ESB, SOA, server di app e database.

Poiché i provider mettono a disposizione i propri servizi sul web, devono assicurarsi di aver adottato tutte le misure necessarie per proteggere e proteggere i servizi da accessi non autorizzati. In qualità di fornitore di servizi, considera i seguenti aspetti:

  • Sicurezza: come farete a controllare l'accesso ai servizi per impedire accessi non autorizzati?
  • Compatibilità: i servizi funzioneranno su piattaforme e dispositivi diversi?
  • Misurabilità: come puoi monitorare i servizi per assicurarti che siano disponibili?
  • Monetizzazione: come puoi monitorare e fatturare ai clienti l'accesso ai tuoi servizi?
  • E molte altre considerazioni

Dopo il rilascio di un'app client che accede a qualsiasi servizio, il fornitore di servizi deve assicurarsi che tali servizi continuino a funzionare nel tempo man mano che vengono aggiunti, modificati o eliminati. Il fornitore di servizi deve inoltre poter informare gli sviluppatori di app di eventuali modifiche apportate ai servizi e garantire che le app client siano sincronizzate con tali servizi.

Gli sviluppatori di app client incontrano difficoltà quando provano a utilizzare servizi di diversi provider. Attualmente sono disponibili molte tecnologie che un fornitore di servizi può utilizzare per esporre i propri servizi. La stessa app client potrebbe dover utilizzare un meccanismo per consumare un servizio di un provider e un meccanismo diverso per utilizzare un servizio di un provider diverso. Gli sviluppatori di app possono persino affrontare la situazione in cui devono utilizzare meccanismi diversi per usufruire dei servizi dello stesso provider.

Rendi disponibili i servizi tramite Apigee Edge

Apigee Edge ti consente di fornire un accesso sicuro ai tuoi servizi con un'API ben definita che è coerente in tutti i tuoi servizi, indipendentemente dall'implementazione. Un'API coerente:

  • Consente agli sviluppatori di app di utilizzare facilmente i tuoi servizi.
  • Consente di modificare l'implementazione del servizio di backend senza influire sull'API pubblica.
  • Consente di sfruttare analisi, monetizzazione, portale per gli sviluppatori e altre funzionalità integrate in Edge.

L'immagine seguente mostra un'architettura in cui Edge gestisce le richieste dalle app client ai tuoi servizi di backend:

Apigee Edge si trova tra le applicazioni client e i servizi di backend.

Anziché far utilizzare direttamente i tuoi servizi agli sviluppatori di app, possono accedere a un proxy API creato su Edge. Il proxy API funziona come una mappatura di un endpoint HTTP disponibile pubblicamente al tuo servizio di backend. Se crei un proxy API, consenti a Edge di gestire le attività di sicurezza e autorizzazione necessarie per proteggere i tuoi servizi, nonché di analizzare, monitorare e monetizzare questi servizi.

Poiché gli sviluppatori di app inviano richieste HTTP a un proxy API anziché direttamente ai tuoi servizi, non hanno bisogno di sapere nulla sull'implementazione dei tuoi servizi. Tutto ciò che lo sviluppatore deve sapere è:

  • L'URL dell'endpoint proxy API.
  • Qualsiasi parametro di query, intestazione o parametro corpo trasmesso in una richiesta.
  • Eventuali credenziali di autenticazione e autorizzazione richieste.
  • Il formato della risposta, incluso il formato dei dati della risposta, ad esempio XML o JSON.

Il proxy API isola lo sviluppatore di app dal servizio di backend. Pertanto, puoi modificare l'implementazione del servizio a condizione che l'API pubblica rimanga coerente. Se mantieni un'API frontend coerente, le app client esistenti continueranno a funzionare indipendentemente dalle modifiche al backend.

Puoi utilizzare i criteri sul proxy API per aggiungere funzionalità a un servizio senza dover apportare modifiche al servizio di backend. Ad esempio, puoi aggiungere criteri al proxy per eseguire trasformazioni e filtri dei dati, aggiungere sicurezza, eseguire logica condizionale o codice personalizzato e molte altre azioni. La cosa importante da ricordare è implementare i criteri su Edge, non sul server di backend.

Per maggiori informazioni, consulta Informazioni sulle API e sui proxy API.

Crea un prodotto API

Un proxy API è l'endpoint HTTP su Apigee Edge che gli sviluppatori utilizzano per accedere ai servizi di backend. Sebbene sia possibile, in genere non rendi disponibili singoli proxy API. Puoi invece raggruppare uno o più proxy API in un prodotto API.

Un prodotto API è un bundle di proxy API combinati con un piano di servizio. Tale piano di servizio può impostare limiti di accesso sui proxy API, fornire sicurezza, consentire monitoraggio e analisi e fornire funzionalità aggiuntive. I prodotti API sono anche il meccanismo centrale che Edge utilizza per l'autorizzazione e il controllo dell'accesso alle tue API.

Hai molta flessibilità durante la creazione di prodotti basati su API. Ad esempio, più prodotti API possono condividere lo stesso proxy API. La figura seguente mostra tre prodotti basati su API. Tieni presente che tutti i prodotti consentono l'accesso al proxy API 3, ma solo il prodotto A consente l'accesso al proxy API 1.

Il prodotto A accede ai proxy 1 e 3. Il prodotto B accede al proxy 3.
    Il prodotto C accede ai proxy 2, 3 e 4.

È possibile impostare proprietà diverse su ciascun prodotto API. Ad esempio, puoi rendere disponibile un prodotto API con un limite di accesso basso, ad esempio 1000 richieste al giorno, a un prezzo scontato. Successivamente, rilasci un altro prodotto API che fornisce accesso allo stesso proxy API, ma con un limite di accesso molto più elevato, a un prezzo più elevato. In alternativa, puoi creare un prodotto API senza costi che consente l'accesso in sola lettura ai tuoi servizi e poi vendere un prodotto API agli stessi proxy API che consentono l'accesso in lettura/scrittura.

Per maggiori informazioni, consulta la sezione Gestire i prodotti basati su API.

Consenti a un'app lato client di accedere al tuo prodotto API

Quando gli sviluppatori di app decidono di accedere ai tuoi servizi, devono prima registrare l'app client nel tuo prodotto API.

Un'app client ha bisogno di una chiave per chiamare un'API associata a un prodotto API.

Al momento della registrazione, uno sviluppatore di app riceve una chiave API che deve includere in ogni richiesta a un proxy API incluso nel prodotto API. La chiave è autenticata e, se l'autenticazione ha esito positivo, la richiesta può accedere al tuo servizio di backend.

Puoi revocare la chiave in qualsiasi momento in modo che l'app client non abbia più accesso ai tuoi servizi. In alternativa, puoi definire un limite di tempo su una chiave in modo che lo sviluppatore debba aggiornarla dopo un intervallo di tempo specifico.

Sei tu a decidere come gestire le richieste di registrazione da parte degli sviluppatori per accedere ai tuoi prodotti API. Utilizzando i servizi per sviluppatori Apigee Edge, puoi automatizzare il processo di registrazione o utilizzare un processo manuale per controllare l'accesso.

Creare prodotti basati su API e renderli disponibili agli sviluppatori

  1. Crea uno o più proxy API che mappano gli URL disponibili pubblicamente ai tuoi servizi di backend.
  2. Crea un prodotto API che raggruppa i proxy API.
  3. Esegui il deployment dei proxy API e del prodotto API.
  4. Comunica ai tuoi sviluppatori che il prodotto API è disponibile.

Una volta che gli sviluppatori di app sono a conoscenza della disponibilità del tuo prodotto API, possono:

  1. Registrare le app client con il tuo prodotto API.
  2. Ricevi una chiave API per il prodotto API.
  3. Effettua richieste ai tuoi servizi tramite proxy API (inclusi nel prodotto API) e trasmetti la chiave API con ogni richiesta.

Componenti di Apigee Edge

Apigee Edge comprende servizi di runtime, monitoraggio e analisi delle API e servizi per sviluppatori che insieme forniscono un'infrastruttura completa per la creazione, la sicurezza, la gestione e le operazioni delle API.

La figura seguente mostra i servizi perimetrali:

Gli sviluppatori accedono all'ecosistema degli sviluppatori che include Smart Docs, il portale personalizzabile, la gestione delle chiavi self-service e gli SDK. App e servizi accedono al runtime API, che include gateway, connettori, codice personalizzato, sicurezza e API di gestione. Gli ingegneri operativi accedono al monitoraggio e all'analisi, che includono report aziendali, monitoraggio delle prestazioni, report personalizzati e tracciamento.

Runtime API Edge

I servizi API Apigee Edge riguardano la creazione e l'utilizzo di API, che tu stia creando proxy API in qualità di provider di servizi o utilizzando API, SDK e altri servizi utili come sviluppatore di app.

Il server di gestione delle API fornisce strumenti per aggiungere e configurare proxy API, configurare prodotti API e gestire gli sviluppatori di app e le app client. Elimina molti problemi di gestione comuni dai servizi di backend. Quando aggiungi un proxy API, puoi applicare criteri al proxy API per aggiungere sicurezza, limitazione della frequenza, mediazione, memorizzazione nella cache e così via. Puoi anche personalizzare il comportamento del proxy API applicando script personalizzati, effettuando chiamate ad API e servizi di terze parti e così via. Per saperne di più, consulta Informazioni sulle API e sui proxy API.

Se sei uno sviluppatore Node.js, puoi aggiungere facilmente i tuoi moduli Node.js a Edge per creare API e mashup di API, sfruttando al contempo i vantaggi offerti da Edge, dalla trasformazione dei messaggi alla sicurezza, fino all'analisi.

Monitoraggio e analisi perimetrali

L'analisi delle API Apigee Edge fornisce strumenti efficaci per visualizzare le tendenze di utilizzo a breve e a lungo termine delle tue API. Puoi segmentare il pubblico in base agli sviluppatori e alle app principali, comprendere l'utilizzo in base al metodo API per sapere dove investire e creare report personalizzati su informazioni a livello aziendale o operativo.

Man mano che i dati passano attraverso Edge, vengono raccolti diversi tipi predefiniti di informazioni, tra cui URL, IP, ID utente per le informazioni sulle chiamate API, latenza, dati sugli errori e così via. Puoi creare criteri per aggiungere altre informazioni, ad esempio intestazioni, parametri di query e parti di una richiesta o risposta estratte da XML o JSON. Queste informazioni vengono raccolte in modo asincrono dal flusso di richiesta/risposta effettivo e, pertanto, non hanno alcun effetto sulle prestazioni dell'API.

L'interfaccia utente di gestione consente di visualizzare più metriche e dimensioni in un browser, come mostrato nella figura seguente:

Una dashboard di analisi che mostra il numero di errori dei criteri sotto forma di grafico e
    tabella.

Tuttavia, puoi anche accedere al servizio Analytics e controllarlo tramite un'interfaccia a riga di comando o API RESTful. Per saperne di più, consulta la panoramica dell'analisi delle API.

Ecosistema di sviluppatori Edge

Apigee Edge offre servizi per sviluppatori che ti consentono di:

  • Gestisci la community di sviluppatori di app che utilizzano i tuoi servizi.
  • Collabora con sviluppatori interni ed esterni e formalizza le relazioni con i modelli finanziari.
  • Fai l'onboarding degli sviluppatori e crea un portale per sviluppatori. Gli sviluppatori di app si connettono al tuo portale per accedere alla documentazione API, scoprire di più sui prodotti API disponibili pubblicamente e gestire le chiavi API.

Ogni cliente Edge può creare il proprio portale per sviluppatori, nel cloud oppure on-premise, con Apigee Edge per il cloud privato.

Apigee Edge ti consente di creare due tipi di portali:

Monetizzazione

Le funzionalità di monetizzazione forniscono l'infrastruttura finanziaria e le relazioni necessarie per trasformare la tua community di sviluppatori in un vero canale per le tue risorse digitali. Con la monetizzazione puoi creare una varietà di piani tariffari che prevedono addebiti per l'utilizzo dei tuoi prodotti basati su API o che ti consentono di pagare agli sviluppatori in scenari di condivisione delle entrate.

I piani includono piani prepagati, piani post-pagati, piani a tariffa fissa, piani a tariffa variabile, piani "freemium", piani personalizzati per sviluppatori specifici, piani che coprono gruppi di sviluppatori e altro ancora. Inoltre, la monetizzazione include le funzionalità di generazione di report e fatturazione.

Per scoprire di più, consulta la sezione Panoramica della monetizzazione.

Sapori di Edge

Apigee Edge è disponibile nelle seguenti versioni:

  • Cloud pubblico: una versione SAAS ospitata in cui Apigee gestisce l'ambiente, consentendoti di concentrarti sulla creazione dei servizi e sulla definizione delle API per questi servizi.
  • Private Cloud: un'installazione on-premise in cui controlli l'ambiente hardware e sei responsabile dell'installazione, dell'upgrade, della manutenzione e di altri processi amministrativi.

Se ti interessa la nostra versione ibrida di Apigee, consulta i seguenti argomenti di Apigee X:

A livello funzionale, le versioni Public Cloud e Private Cloud sono molto simili. Tuttavia, la versione del cloud privato non supporta tutte le funzionalità della versione del cloud pubblico. Le funzionalità non supportate da Private Cloud includono:

  • Target ospitati
  • Estensioni
  • Portali per sviluppatori integrati (nota: sono supportati i portali per gli sviluppatori basati su Drupal)
  • Monitoraggio delle API
  • Sense

Per un elenco delle differenze tra i gusti, consulta Confronto tra i prodotti Apigee.

Esistono anche piccole differenze tra le API, come descritto in Differenze tra l'API Edge for Public Cloud e l'API Private Cloud.

Il cloud pubblico supporta gli account senza costi e a pagamento. Private Cloud richiede account a pagamento.

Per supportare completamente un'installazione on-premise, la versione del cloud privato include componenti come il server di gestione Apigee, un database NoSQL di Apache Cassandra, un server OpenLDAP, un router dei messaggi e un processore di messaggi.