Panoramica di Node.js su Apigee Edge

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

Puoi ospitare le API Node.js su Apigee Edge, dove i proxy API possono chiamarle come servizi di destinazione.

Il supporto di Node.js su Apigee Edge ti consente di creare servizi di backend personalizzati per i tuoi proxy in Node.js. Essenzialmente, Apigee Edge ospita il tuo codice Node.js in un ambiente di runtime che ha come ambito un'organizzazione e un ambiente Apigee. I proxy API di cui viene eseguito il deployment nella stessa organizzazione e nello stesso ambiente possono chiamare le API basate su HTTP esposte dall'applicazione Node.js.

Opzioni di deployment Node.js

Apigee offre due opzioni per l'hosting del codice Node.js: target ospitati e l'ambiente di deployment Node.js Edge tradizionale.

Deployment nelle destinazioni ospitate

I target ospitati consentono l'esecuzione delle applicazioni Node.js in un ambiente nativo che non dipende da tecnologie di runtime specifiche di Apigee. Fornisce un runtime dei nodi nativo che ti consente di utilizzare i tuoi pacchetti di nodi preferiti.

Puoi eseguire il debug e testare la tua app localmente prima di eseguirne il deployment. Ti garantiamo che la versione di cui è stato eseguito il deployment funzionerà esattamente come avviene in locale. Al momento del deployment, puoi scegliere qualsiasi versione del runtime dell'applicazione per eseguire la tua applicazione nelle destinazioni ospitate. Ad esempio, puoi scegliere specificamente di eseguire un'app Node.js in un ambiente v8.10.0 o in qualsiasi altra versione.

La figura seguente illustra l'architettura di base:

L'ambiente di runtime Destinazioni in hosting ha come ambito un'organizzazione e un ambiente Apigee e può fungere da destinazione per qualsiasi proxy API di cui viene eseguito il deployment nella stessa organizzazione e nello stesso ambiente.

Esegui il deployment nel tradizionale ambiente Node.js incorporato

L'approccio tradizionale al deployment di Node.js in Edge si basa internamente su un'applicazione bridge open source chiamata (Trireme) e un interprete JavaScript chiamato (Rhino). Questi componenti consentono al codice Node.js di essere eseguito direttamente nell'ambiente di runtime Java Edge.

L'ambiente di runtime Node.js tradizionale integrato ha come ambito un'organizzazione e un ambiente Apigee e può fungere da destinazione per qualsiasi proxy API di cui viene eseguito il deployment nella stessa organizzazione e nello stesso ambiente.

Con questo approccio, puoi utilizzare un modulo di supporto denominato apigee-access che consente di accedere a variabili di flusso proxy API, cache, mappe chiave-valore e quote dall'interno del codice dell'applicazione Node.js.

Scelta di un approccio Node.js

Apigee consiglia di prendere in considerazione l'utilizzo di destinazioni ospitate. Le app Node.js di cui è stato eseguito il deployment nelle destinazioni ospitate non dipendono da alcuna tecnologia di runtime Node.js specifica di Apigee. L'app Node.js verrà eseguita nelle destinazioni ospitate esattamente come viene eseguita nell'ambiente di sviluppo locale.

Inoltre, il supporto di Apigee per il deployment perimetrale tradizionale di Node.js è soggetto a limitazioni:

  • È supportata solo una versione precedente di Node.js (0.10.32).
  • Esistono piccole differenze di comportamento tra l'ambiente Node.js standard e l'ambiente Trireme/Rhino.
  • Il debug delle app Node.js dopo il deployment su Edge è difficile.

Attualmente, i target ospitati non supportano l'utilizzo di apigee-access per accedere alle risorse nel contesto del flusso proxy, come le variabili di flusso.

Per saperne di più sul deployment perimetrale tradizionale di Node.js, consulta Deployment tradizionale di Node.js su Edge.

Casi d'uso

I casi d'uso comuni per Node.js su Edge includono:

  • Creazione di API e servizi di backend autonomi basati su HTTP e altamente personalizzati.

  • Risoluzione di problemi di ottimizzazione complessi e per dispositivi mobili con il vantaggio di un endpoint di destinazione basato su script.

  • Creazione di servizi compositi e mashup.

  • Sviluppo rapido di prototipi di nuove API utilizzando framework come Express.

Passaggio successivo

Per decidere quale approccio al deployment di Node.js è il più adatto alle tue esigenze, leggi le panoramiche: