Übersicht über Node.js in Apigee Edge

Sie lesen gerade die Dokumentation zu Apigee Edge.
Rufen Sie die Dokumentation zu Apigee X auf.
info

Sie können Ihre Node.js-APIs in Apigee Edge hosten, wo sie von API-Proxys als Ziel-Dienste aufgerufen werden können.

Mit der Node.js-Unterstützung in Apigee Edge können Sie benutzerdefinierte Back-End-Dienste für Ihre Proxys in Node.js erstellen. Im Grunde hostet Apigee Edge Ihren Node.js-Code in einer Laufzeitumgebung, die auf eine Apigee-Organisation und -Umgebung beschränkt ist. API-Proxys, die in derselben Organisation und Umgebung bereitgestellt werden, können HTTP-basierte APIs aufrufen, die von der Node.js-Anwendung verfügbar gemacht werden.

Optionen für die Node.js-Bereitstellung

Apigee bietet zwei Optionen zum Hosten von Node.js-Code: gehostete Ziele und die traditionelle Node.js-Bereitstellungsumgebung in Edge.

In gehosteten Zielen bereitstellen

Gehostete Ziele ermöglichen die Ausführung von Node.js -Anwendungen in einer nativen Umgebung, die nicht von einer Apigee-spezifischen Laufzeit-Technologie abhängig ist. Sie erhalten eine native Node-Laufzeit, sodass Sie Ihre bevorzugten Node-Pakete verwenden können.

Sie können Ihre Anwendung lokal debuggen und testen, bevor Sie sie bereitstellen, und sich darauf verlassen, dass die bereitgestellte Version genau wie die lokale Version funktioniert. Bei der Bereitstellung können Sie eine beliebige Laufzeitversion der Anwendung auswählen, um Ihre Anwendung in gehosteten Zielen auszuführen. Sie können beispielsweise festlegen, dass eine Node.js-Anwendung in einer Umgebung mit Version 8.10.0 oder einer anderen Version ausgeführt werden soll.

Die folgende Abbildung veranschaulicht die grundlegende Architektur:

Die Laufzeitumgebung für gehostete Ziele ist auf eine Apigee-Organisation und -Umgebung beschränkt und kann als Ziel für alle API-Proxys dienen, die in derselben Organisation und Umgebung bereitgestellt werden.

In der traditionellen eingebetteten Node.js-Umgebung bereitstellen

Der traditionelle Ansatz zur Bereitstellung von Node.js in Edge basiert intern auf einer Open-Source-Bridge-Anwendung namens (Trireme) und einem JavaScript-Interpreter namens (Rhino). Mit diesen Komponenten kann Node.js-Code direkt in der Java-Laufzeitumgebung von Edge ausgeführt werden.

Die traditionelle, eingebettete Node.js-Laufzeitumgebung ist auf eine Apigee-Organisation und Umgebung beschränkt und kann als Ziel für alle API-Proxys dienen, die in derselben Organisation und Umgebung bereitgestellt werden.

Mit diesem Ansatz können Sie ein unterstützendes Modul namens apigee-access verwenden, mit dem Sie aus Ihrem Node.js-Anwendungscode heraus auf API-Proxy-Ablaufvariablen, Caches, Schlüssel/Wert-Zuordnungen und Kontingente zugreifen können.

Node.js-Ansatz auswählen

Apigee empfiehlt, gehostete Ziele zu verwenden. Node.js-Anwendungen, die in gehosteten Zielen bereitgestellt werden, sind nicht von einer Apigee-spezifischen Node.js-Laufzeit-Technologie abhängig. Ihre Node.js-Anwendung wird in gehosteten Zielen genau so ausgeführt wie in Ihrer lokalen Entwicklungsumgebung.

Außerdem hat die Apigee-Unterstützung für die traditionelle Node.js-Bereitstellung in Edge Einschränkungen:

  • Es wird nur eine ältere Version von Node.js (0.10.32) unterstützt.
  • Es gibt subtile Verhaltensunterschiede zwischen der Standard-Node.js-Umgebung und der Trireme/Rhino-Umgebung.
  • Das Debuggen von Node.js-Anwendungen nach der Bereitstellung in Edge ist schwierig.

Derzeit unterstützt Hosted Targets nicht die Verwendung von apigee-access für den Zugriff auf Ressourcen im Kontext des Proxy-Ablaufs, z. B. Ablaufvariablen.

Weitere Informationen zur traditionellen Node.js-Bereitstellung in Edge finden Sie unter Traditionelle Node.js-Bereitstellung in Edge.

Anwendungsfälle

Häufige Anwendungsfälle für Node.js in Edge sind:

  • Erstellen hochgradig angepasster eigenständiger HTTP-basierter APIs und Back-End-Dienste.

  • Lösen komplexer und mobiler Optimierungsprobleme mit dem Vorteil eines skriptfähigen Zielendpunkts.

  • Erstellen zusammengesetzter Dienste und Mashups.

  • Schnelles Entwickeln von Prototypen neuer APIs mit Frameworks wie Express.

Nächster Schritt

Um zu entscheiden, welcher Node.js-Bereitstellungsansatz für Sie am besten geeignet ist, lesen Sie die Übersichten: