Gehostete Ziele – Übersicht

Sie lesen gerade die Dokumentation zu Apigee Edge.
Zur Dokumentation zuApigee X wechseln.
info

Mit gehosteten Zielen können Sie Node.js-Anwendungen in einer nativen Laufzeit Umgebung ausführen, die von Apigee gehostet wird. Das Ziel von gehosteten Zielen ist einfach: Sie können Anwendungen in einer nativen, sicheren, skalierbaren und isolierten Umgebung bereitstellen, in der Edge-API-Proxys sie als Zieldienste aufrufen können.

Wie in der folgenden Abbildung dargestellt, ruft ein Edge-API-Proxy eine Node.js-Anwendung auf, die in der Umgebung für gehostete Ziele bereitgestellt wird. Beachten Sie, dass die Umgebung für gehostete Ziele auf eine Apigee-Organisation:Umgebung beschränkt ist.

Damit ein Edge-API-Proxy mit einer ordnungsgemäß erstellten und bereitgestellten Anwendung für gehostete Ziele kommunizieren kann, ist eine einfache Konfiguration im Zielendpunkt des Proxys erforderlich. Weitere Informationen finden Sie in den Anleitungen zu gehosteten Zielen.

Welche Anwendungslaufzeiten werden von gehosteten Zielen unterstützt?

Derzeit können Sie nur Node.js-Anwendungen in gehosteten Zielen bereitstellen.

Gehostete Ziele installieren

Gehostete Ziele sind in allen Edge Public Cloud-Organisationen verfügbar. Sie müssen nichts installieren um gehostete Ziele zu verwenden.

Prüfen, ob gehostete Ziele aktiviert sind

Wenn Sie prüfen möchten, ob gehostete Ziele für Ihre Organisation aktiviert sind, rufen Sie die Details Ihrer Organisation ab und prüfen Sie, ob das features.isEdgeFunctionsEnabled Attribut auf „true“ gesetzt ist. Das Attribut ist schreibgeschützt.

Beispiel:

https://api.enterprise.apigee.com/v1/organizations/myorg

  {
     "createdAt":1507572884047,
     "createdBy":"jdoe@apigee.com",
     "displayName":"myorg",
     "environments":[
        "prod",
        "dev",
        "test",
        "portal"
     ],
     "lastModifiedAt":1507578673194,
     "lastModifiedBy":"jdoe@apigee.com",
     "name":"jdoe",
     "properties":{
        "property":[
           {
              "name":"features.isSmbOrganization",
              "value":"false"
           },
           {
              "name":"self.service.virtual.host.enabled",
              "value":"true"
           },
           {
              "name":"features.isCpsEnabled",
              "value":"true"
           },
           {
              "name":"features.isEdgeFunctionsEnabled",
              "value":"true"
           }
        ]
     },
     "type":"paid"
  }
  

Wissenswertes über gehostete Ziele

Mit gehosteten Zielen können Node.js-Anwendungen in einer nativen Umgebung ausgeführt werden, die nicht von einer Apigee-spezifischen Laufzeittechnologie abhängig ist. Sie können Ihre App 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 Anwendungslaufzeitversion auswählen, um Ihre Anwendung in gehosteten Zielen auszuführen. Sie können beispielsweise festlegen, dass eine Node.js-Anwendung in einer v8.10.0-Umgebung ausgeführt werden soll.

Limits

Informationen zu Nutzungslimits für gehostete Ziele finden Sie unter Apigee-Produkt limits.

Grundlegende Schritte

Wenn Sie mit der Edge-Proxyentwicklung vertraut sind, müssen Sie nur ein paar einfache Schritte lernen, um gehostete Ziele erfolgreich zu verwenden. Im Wesentlichen erstellen, stellen Sie Edge-Proxys für gehostete Ziele bereit und verwalten sie genau wie für jeden anderen Apigee Edge-Proxy.

Um gehostete Ziele zu verwenden, müssen Sie die folgenden Aufgaben ausführen. In den Anleitungen werden diese Aufgaben im Detail beschrieben.

  • Entwickeln und testen Sie Ihre Node.js-Anwendung lokal.
  • Erstellen Sie eine Manifestdatei im Stammverzeichnis Ihres Anwendungsprojekts. Das Manifest ist eine YAML-Datei, die Informationen zum Erstellen und Bereitstellen der Anwendung enthält.
  • Fügen Sie die Anwendung dem Edge-Proxy als einen gehosteten Ressourcentyp hinzu.
  • Fügen Sie im Zielendpunkt des Proxys ein leeres <HostedTarget/>-Tag hinzu. Dieses Tag weist Edge an, die Node.js-Anwendung in der Umgebung für gehostete Ziele bereitzustellen. Beispiel:
  • <?xml version="1.0" encoding="UTF-8"?>
    <TargetEndpoint name="default">
       <PreFlow name="PreFlow">
          <Request />
          <Response />
       </PreFlow>
       <PostFlow name="PostFlow">
          <Request />
          <Response />
       </PostFlow>
       <Flows />
       <HostedTarget />
    </TargetEndpoint>

Umfang von Anwendungen für gehostete Ziele

Anwendungen für gehostete Ziele sind auf eine Edge-Organisation:Umgebung beschränkt. Diese Beschränkung ist dieselbe wie für jeden Edge-Proxy.

Können Anwendungen für gehostete Ziele auf Proxy-Daten zugreifen?

Anwendungen für gehostete Ziele haben derzeit keinen Zugriff auf die Proxy-Laufzeitumgebung. Das bedeutet, dass Sie nicht direkt über Anwendungen für gehostete Ziele auf Fluss variablen, Caches und andere Entitäten zugreifen können.

Mit eingebettetem Node.js (der traditionellen, Trireme-basierten Node.js-Unterstützung in Edge) können Sie mit apigee-access auf Flussvariablen und andere Entitäten in Edge zugreifen. Gehostete Ziele unterstützen jedoch nicht das apigee-access Modul für Node.js-Bereitstellungen. Siehe auch Ist es möglich, den Mangel an „apigee-access“ zu umgehen?

Vorhandenen Anwendungscode zu gehosteten Zielen migrieren

Derzeit gibt es keinen automatisierten Migrationspfad von einer traditionellen Trireme-basierten eingebetteten Node.js-Anwendung zu gehosteten Zielen. Sie können vorhandenen Anwendungscode jedoch manuell zu gehosteten Zielen konvertieren. Ein Beispiel finden Sie unter Vorhandenen Node.js-Proxy zu einem Proxy für gehostete Ziele migrieren.