Unterschiede zwischen Apigee Edge und Apigee X

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

In diesem Thema wird beschrieben, wie sich Apigee X (manchmal auch einfach als „Apigee“ bezeichnet) von Apigee Edge Diese Informationen richten sich an bestehende Apigee Edge-Kunden, die einen Kauf in Betracht ziehen. zu Apigee X migrieren.

Weitere Informationen zu den Features von Apigee X finden Sie in der Funktionszusammenfassung von Apigee X.

In der folgenden Tabelle sind die Apigee API-Verwaltungsprodukte aufgeführt, die in diesem Thema verglichen werden:

Produkt Wo gehostet Verwaltet von
Apigee Edge for Public Cloud Apigee-Cloud Apigee
Apigee Edge for Private Cloud Das private Rechenzentrum des Kunden. Kunde
Apigee X Google Cloud Apigee
Apigee Hybrid Sowohl Google Cloud als auch das private Rechenzentrum des Kunden. Apigee verwaltet die Verwaltungsebene und der Kunde verwaltet die Laufzeitebene.

Funktionsvergleich von Apigee Edge und Apigee X

In den folgenden Abschnitten werden die Features von Apigee Edge Public/Private Cloud mit einem Feature verglichen in Apigee X und Hybrid verfügbar.

Beachten Sie die Limits für Apigee X. auch von den Apigee Edge-Limits.

Zusammenfassung der aktuellen Unterschiede

In der folgenden Tabelle werden die Unterschiede auf Featureebene zwischen Apigee X (und Hybrid) beschrieben. und Apigee Edge für öffentliche und private Cloud-Plattformen.

Apigee Edge-Funktion Unterstützung in Apigee X und Hybrid
API-Proxy-Revisionen

Bei der Bereitstellung nicht veränderbar

Aktive Systemdiagnosen Wird für externe MIGs unterstützt, die VMs verwenden. Wird bei Verwendung des privaten Dienstes nicht unterstützt Verbinden. Informationen zu den Routingtypen finden Sie unter Routing konfigurieren
Apigee-Adapter für Istio Verworfen: Wir empfehlen, stattdessen Apigee Adapter for Envoy zu verwenden.
<ph type="x-smartling-placeholder"></ph> Unternehmen und Entwickler

Es gibt eine ähnliche, aber nicht identische Lösung. Weitere Informationen finden Sie unter App-Inhaberschaft mithilfe von AppGroups organisieren

CwC (Code mit Konfiguration)

Geplant

Deployments
  • Asynchrone Bereitstellungen
  • Der Status des Bereitstellungsstatus basiert auf dem Zeitpunkt, zu dem die Laufzeitebene mit der Verwaltungsebene "eingecheckt" ist.
Umgebungen
  • Unterstützung für Umgebungsgruppen
  • Self-Service über die Apigee-UI und die APIs
  • Mehr Flexibilität bei der Bereitstellungstopologie
  • Ein MP-Pod kann nur eine Umgebung bereitstellen

Weitere Informationen finden Sie unter Umgebungen und Umgebungsgruppen.

Gehostete Ziele

Verwenden Sie Cloud Run oder Cloud Functions

Verarbeitung von HTTP/1.1-Headerfeldnamen Wandelt HTTP/1.1-Headerfeldnamen in Kleinbuchstaben um, wenn sie an den Back-End. In Apigee Edge wird die Groß-/Kleinschreibung der Header-Feldnamen beibehalten.
IAM-Rollen für eine differenzierte rollenbasierte Zugriffssteuerung

Geplant

JSONPath mit [@.length-x]

Die Verwendung von [@.length-x] in JSONPath-Ausdrücken wird in Apigee X nicht unterstützt. Die JSONPath-Spezifikation besagt, dass Ausdrücke von der zugrunde liegenden Skripterstellung abhängig sind Sprache. length-x ist ein JavaScript-Konstrukt, nicht Java, und [@.length-x] wurde nicht als Teil der Spezifikation implementiert. In Apigee X der Ausdruck [@.length-x] durch das Indexierungsschema ([-x]) ersetzt wird.

Für dieses Beispiel:

{
    "books": [
      {
        "name": "A",
      },
      {
        "name": "B",
      }
    ]
}

Die Eingabe $.books[@.length-1] gibt {“name”: “B”} zurück in Apigee Edge und gibt in Apigee X [{“name”: “B”}] zurück.

Keystores/Truststores

Northbound als Kubernetes-Secrets verwaltet

KVMs
  • Sie können verschlüsselte, auf die Umgebung ausgerichtete KVMs in der Apigee-UI erstellen. KVMs sind immer verschlüsselt. Sie können KVM-Einträge in der Benutzeroberfläche nicht hinzufügen, aktualisieren oder aufrufen.
  • Verwenden Sie das Attribut private. mit allen Variablen, wenn Sie mit dem Befehl GET auf eine KVM zugreifen, um die KVM-Informationen in einer Debug-Sitzung (Trace) auszublenden. Wenn das Attribut private. nicht verwendet wird, wird die KVM weiterhin verschlüsselt. Die KVM-Informationen werden jedoch in der Trace-Fehlerbehebungs-Sitzung als entschlüsselt angezeigt. Es wird keine Ausnahme ausgelöst.
  • Sie können KVM-Einträge mit der keyvaluemaps.entries API oder der KeyValueMapOperations-Richtlinie verwalten.
  • Sie können für einige der gleichen Anwendungsfälle wie KVMs auch Attribut-Gruppen verwenden. Weitere Informationen finden Sie unter Attribut-Gruppen verwenden.
  • Mit dem <MapName>-Element kann die KeyValueMapOperations-Richtlinie festlegen, welche KVM zur Laufzeit dynamisch verwendet werden soll.

Weitere Informationen zum Erstellen von KVMs in der Benutzeroberfläche finden Sie unter Schlüsselwertzuordnungen verwenden. Informationen zur Auswahl des richtigen Mechanismus zur Datenpersistenz finden Sie unter Auf Konfigurationsdaten zugreifen.

Mikrogateway Wir empfehlen die Verwendung von Apigee-Adapter für Envoy.
Monetarisierung Weitere Informationen finden Sie unter . Unterschiede bei der Monetarisierung
Node.js
  • Node.js API-Proxys werden nicht unterstützt.
  • Apigee empfiehlt, Node.js-Anwendungen als separate Container in Kubernetes zu hosten (gleicher oder unterschiedlicher Cluster)
mTLS nach Norden Geplant
OAuth Die neue RevokeOAuthv2-Richtlinie führt Widerrufe anhand von Endnutzer-ID und/oder App-ID aus. Diese Richtlinie ersetzt die Apigee Edge API, um OAuth2-Tokens zu widerrufen.
Richtlinien
  • Neue Richtlinien:
    • AssertCondition-Richtlinie: Wertet zur Laufzeit eine bedingte Anweisung in den Anfrage- oder Antwortabläufen aus.
    • CORS-Richtlinie: Ermöglicht JavaScript-XMLHttpRequest-Aufrufen (XHR), die auf einer Webseite ausgeführt werden, mit Ressourcen von Nicht-Ursprungsdomains zu interagieren.
    • DataCapture-Richtlinie: Ersetzt die StatisticsCollector-Richtlinie.
    • ExternalCallout-Richtlinie: Sendet gRPC-Anfragen an Ihren gRPC-Server, um benutzerdefiniertes Verhalten zu implementieren, das von Apigee-Richtlinien nicht unterstützt wird.
    • GraphQL-Richtlinie: Parst GraphQL-Nutzlasten in Nachrichtenablaufvariablen, überprüft GraphQL-Anfragen anhand eines Schemas oder beides.
    • PublishMessages-Richtlinie: Veröffentlicht Informationen zum API-Proxy-Ablauf in einem Google Cloud Pub/Sub-Thema.
    • RevokeOAuthv2-Richtlinie: Führt Widerrufe anhand von Nutzer-ID und/oder App-ID aus.
    • TraceCapture-Richtlinie: Fügt den Trace-Daten Ihrer Apigee-Laufzeit zusätzliche Variablen hinzu.
  • Nicht unterstützte Richtlinie:
    • StatisticsCollector-Richtlinie (ersetzt durch die neue DataCapture-Richtlinie)
  • Geänderte Richtlinien: <ph type="x-smartling-placeholder">
reasonPhrase Nicht unterstützt.
Ressourcen Ressourcen auf Organisationsebene können nicht verwendet werden
Rollen und Berechtigungen
  • Wird über den IAM-Dienst der Google Cloud Console verwaltet
  • Einige vorkonfigurierte Rollen sind verfügbar
  • Sie können benutzerdefinierte Rollen erstellen, die andere Google Cloud-Berechtigungen enthalten können

Weitere Informationen finden Sie unter Nutzer und Rollen.

Sense Verwenden Sie Erweiterte API-Sicherheit.
SOAP-Dienste im Proxy-Assistenten erstellen Nicht unterstützt. Siehe wsdl2apigee, ein Open-Source-Projekt, das SOAP-Dienstprogramme zur Verwendung mit Apigee bereitstellt.
Trace-/Fehlerbehebungssitzungen Siehe Unterschiede zu Trace.
Virtuelle Hosts

Für Apigee Hybrid:

  • Das Ingress wird über Anthos Service Mesh implementiert.
  • Die Schlüssel und Zertifikate werden direkt in Kubernetes bereitgestellt.

Für Apigee X:

  • Jede Instanz stellt einen HTTPS-Endpunkt über ein selbst signiertes Zertifikat zur Verfügung. Die CA für das Zertifikat kann durch Abfragen der Organisation heruntergeladen werden.

Unterschiede zu Trace

In der folgenden Tabelle werden die Unterschiede in der Funktionsweise von Trace in Apigee X und Hybrid verglichen im Vergleich zu Apigee Edge Cloud:

Funktion Apigee Edge-Cloud Apigee X und Hybrid
Pünktlichkeit Echtzeit; synchron Leichte Verzögerung; asynchron
Name/ID der Sitzung Akzeptiert den Sitzungsnamen des Nutzers Der Sitzungsname des Nutzers wird nicht akzeptiert
Filter Einfache Filterunterstützung wie die Filterung nach Header und Abfrageparameter Unterstützung komplexer Filterlogiken, einschließlich AND- und OR-Operationen. Zugriff auf alle in der Referenz zu Ablaufvariablen genannten Ablaufvariablen. Die Syntax ist dieselbe wie bei Bedingungen, wie in der Referenz zu Bedingungen gezeigt.
Zeitüberschreitung der Sitzung

Definiert die Länge der Debug-Sitzung und den Aufbewahrungszeitraum.

Der Standardwert beträgt 20 Minuten, wenn er über API-Aufrufe initiiert wird, und 10 Minuten, wenn er in der Benutzeroberfläche initiiert wird.

Definiert nur die Länge der Fehlerbehebungssitzung. Der Ausgangspunkt ist, wenn der Nachrichtenprozessor die Anfrage zur Ausführung im Fehlerbehebungsmodus empfängt.

Der Standardwert beträgt 5 Minuten, wenn die Sitzung mit der API initiiert wurde, und 10 Minuten, wenn sie in der Benutzeroberfläche initiiert wurde.

Die Daten werden 24 Stunden lang aufbewahrt, bevor sie automatisch gelöscht werden.

Sitzungsgültigkeit

Dauer, für die die Anfrage zur Sitzungserstellung gültig ist. Wenn die Fehlerbehebungssitzung nicht innerhalb dieser Zeitspanne gestartet wird, können die Synchronizer die Anfrage zur Sitzungserstellung ignorieren. Die Uhren Ihrer Synchronizers müssen synchronisiert werden, wie unter Voraussetzungen beschrieben.
Anzahl der Trace-Anfragen Maximal 20 pro Nachrichtenprozessor Der Standardwert ist 10 pro Nachrichtenprozessor, maximal 15.
API Apigee Edge-Cloud Apigee X
Apigee X stellt die Debug Session API und die Debug Session Data API bereit, unterstützt aber nicht die folgenden Funktionen über die Apigee X APIs:
Fehlerbehebungssitzung beenden

Bestimmte Transaktionen löschen

Unterschiede bei der Monetarisierung

Die folgende Tabelle bietet einen Vergleich der wichtigsten Funktionen zwischen der Apigee Edge-Monetarisierung und Monetarisierung von Apigee X

Apigee Edge-Monetarisierung Apigee X/Hybrid-Monetarisierung
Tarifpakete sind mit API-Produktbundles verknüpft, die mehreren API-Produkten zugeordnet sein können Tarifpakete sind mit API-Produkten verknüpft (1:1-Beziehung)
Anwendungenstwickler erwerben Tarifpakete Anwendungsentwickler erwerben API-Produkte
Kontingente werden auf der API-Proxyebene verwaltet Kontingente werden auf der API-Produktebene (Geschäftsebene) verwaltet
Veröffentlichte Tarifpakete können nur abgelaufen sein; sie können nicht bearbeitet oder gelöscht sein Veröffentlichte Tarifpakete sind möglicherweise abgelaufen, bearbeitet, in Entwürfe verschoben oder gelöscht worden
Komplexe Konfiguration (kein Assistent oder Preview-Tool) Vereinfachte Konfiguration der Tarifpakete mithilfe des Assistenten und des Preview-Tools
Die Richtlinie MonetizationLimitsCheck blockiert den Zugriff, nachdem der erste API-Aufruf verarbeitet wurde, wenn der Anwendungsentwickler kein Abo abgeschlossen hat. Die Richtlinie MonetizationLimitsCheck blockiert sofort den Zugriff, wenn der App-Entwickler kein Abo erworben hat oder das Kontingent überschreitet
Monetarisierungsdaten für Transaktionen können mithilfe benutzerdefinierter Variablen in der Richtlinie zur Transaktionsaufzeichnung erfasst werden. Apigee erfasst automatisch Monetarisierungsdaten. Monetarisierungsdaten für Transaktionen können mit der DataCapture-Richtlinie überschrieben werden. Weitere Informationen finden Sie unter Monetarisierungsdaten erheben .
Prepaid- und Postpaid-Konten können sowohl für Entwickler als auch für Tarifpakete konfiguriert werden. Prepaid- und Postpaid-Konten können nur für Entwickler konfiguriert werden.

Welche Apigee Edge-Features werden in Apigee X nicht unterstützt?

Google plant keine Unterstützung für die folgenden Funktionen:

  • Apigee Edge-Erweiterungen
  • OpenAPI-Spezifikationsspeicher
  • APIs zum Suchen oder Widerrufen von OAuth-Zugriffstokens (da Tokens gehasht sind)
  • OAuth v1- oder OAuth OAuthv1.0a-Richtlinie
  • Trireme (EOL am 10.10.2019)
  • Header mit dem Präfix „X-Apigee-“ werden in Apigee X nicht unterstützt und aus Anfragen und Antworten, bevor sie an Ziele und Clients gesendet werden.

API-Vergleich

Im Allgemeinen haben die meisten Apigee Edge APIs eine Entsprechung für Apigee API. Dieser Abschnitt enthält folgende Informationen:

Zusammenfassung der Änderungen mit der API

Im Folgenden werden die Änderungen im Verhalten in allen Apigee APIs mit Bezug zu den Apigee Edge-APIs aufgeführt.

Verhalten Apigee Edge APIs: Apigee X-APIs
Basisdomain api.enterprise.apigee.com apigee.googleapis.com
Medientypen application/json
application/xml
application/json
Authentifizierung OAuth2, SAML, Basic OAuth2
Zeitstempel in Schlüsseln int64-Format
{
  "createdAt": 1234,
  "lastModifiedAt": 5678
}
String-Format
{
  "createdAt": "1234",
  "lastModifiedAt": "5678"
}
Struktur des Abfrageparameters expand=false
[
        "helloworld",
        "weather"
      ]
{
  "proxies": [
    {
      "name": "helloworld"
    },
    {
      "name": "weather"
    }
  ]
}
Suchparameter mit einem Unterstrich Unterstützt (_optimal=true) Nicht unterstützt (optimal=true)
Attribute in Nutzlasten:
  • created_by
  • modified_by
  • self
Unterstützt Nicht unterstützt
Standardwerte in Nutzlasten Enthalten Nicht enthalten
Fehler bei der Verarbeitung der Struktur
{
        "code": "...",
        "message": "..",
        "contexts": []
      }
{
  "error": {
    "code": 409,
    "message": "...",
    "status": "ABORTED",
    "details": [...]
  }
}
Antwort für das Löschen des Cache Gibt 200 OK und Cache-Details zurück Liefert: 204 No Content
Cache-API-Vorgänge List, create, get, update, delete, clear all, und clear-Optionen. Nur Liste und Löschen. Der kurzlebige L1-Cache wird automatisch erstellt, wenn Sie einen API-Proxy bereitstellen. Weitere Informationen finden Sie unter Cache-Internes.

Unterschiede zwischen den Messwert-APIs von Apigee Edge und Apigee X

Zusammenfassung der Änderungen bei Verwendung der API listet die allgemeinen Unterschiede zwischen der Apigee Edge API und der Apigee X API auf. In der folgenden Tabelle sind bestimmte Unterschiede für die Messwert-APIs aufgeführt:

Funktion Apigee Edge APIs: Apigee X-APIs
API-Endpunkt api.enterprise.apigee.com apigee.googleapis.com
Tägliche Analytics-E-Mails Keine unterstützten APIs
Async Query List API <ph type="x-smartling-placeholder"></ph> Liste asynchroner Analyseabfragen abrufen Das Attribut userId wird in der Antwort nicht berücksichtigt. Weitere Informationen finden Sie unter Methode: organizations.environments.queries.list.
APIs für benutzerdefinierte Berichte Reports API Die Attribute createdBy und lastModifiedBy wurden aus der Antwort entfernt. Siehe Reports API.

Nicht unterstützte Apigee Edge APIs

In der folgenden Tabelle sind die nicht unterstützten Apigee Edge-APIs aufgeführt, für die es keine äquivalente Apigee X API gibt.

API-Kategorie Nicht unterstützte Apigee Edge APIs
API-Monitoring Keine unterstützten APIs
API-Proxys
  • Bereitstellung des API-Proxys aufheben
  • npm-Abhängigkeiten abrufen
  • npm-Module verwalten
Prüfungen Stackdriver Logging API verwenden
Im Cache gespeicherte Logs Keine unterstützten APIs
Unternehmen Keine unterstützten APIs
Unternehmens-Apps Keine unterstützten APIs
App-Familie des Unternehmens Keine unterstützten APIs
App-Schlüssel des Unternehmens Keine unterstützten APIs
Fehlerbehebungssitzungen
  • Trace-Sitzungen können nicht beendet werden
  • Einzelne Transaktionen können nicht gelöscht werden

Weitere Informationen finden Sie unter Unterschiede zu Trace.

Entwickler-App Anzahl der API-Ressourcen abrufen
Entwickler-App-Familie Keine unterstützten APIs
Erweiterungen Keine unterstützten APIs
Schlüsselspeicher: Truststore Schlüsselspeicher oder Truststore testen
LDAP Keine unterstützten APIs
Monetarisierung Keine unterstützten APIs
OAuthV2 Keine unterstützten APIs
Richtlinien Keine unterstützten APIs
Ressourcendateien
  • API-Proxy-Revisionsbereich
  • Organisationsbereich
Sense Keine unterstützten APIs
Nutzer und Nutzerrollen APIs der Google Identitäts- und Zugriffsverwaltung (IAM) verwenden, wie unter Nutzer, Rollen und Berechtigungen mit APIs verwalten beschrieben
Virtuelle Hosts Keine unterstützten APIs

Apigee Edge für Private Cloud im Vergleich zu Apigee Hybrid

In der folgenden Tabelle wird Apigee Edge für Private Cloud und Apigee Hybrid verglichen:

Dienst Produkt- oder Funktionsbereich von Apigee
Apigee Edge for Private Cloud Apigee Hybrid
Analytics Qpid- und Postgres-Server Ein Datenerfassungs-Pod in der Laufzeitebene verwendet fluentd und UDCA (Universal Data Collection Agent), um Analysen zu erfassen und die Daten an den UAP (Unified Analytics Platform) auf der Verwaltungsebene zu senden.
API-Proxy-Gateway Message Processor Der Message Processor (MP) verarbeitet eingehende Anfragen. MPs werden als eine oder mehrere containerisierte Anwendungen in der Laufzeitebene implementiert.
Persistenz Cassandra-Knoten oder -Ring Cassandra bietet Persistenz für die Features KMS, KVM, Kontingent und Cache.
Deployment ZooKeeper Der Synchronizer stellt sicher, dass API-Proxy-Konfigurationen, Umgebungsinformationen und andere Daten zwischen der Verwaltungs- und der Laufzeitebene aktuell sind.
Administrative Benutzeroberfläche Die Apigee Edge-Benutzeroberfläche wird auf dem Verwaltungsserver gehostet Die Apigee-UI wird auf der Verwaltungsebene gehostet.
Lastenausgleich Router Ein Istio Ingress-Controller übergibt Anfragen an den Containeranwendung Message Processor (MP) in der Laufzeitebene.
APIs Verwaltungsserver Apigee APIs sind über den Management Server und MART verfügbar. MART interagiert mit dem lokalen Cassandra-Datenspeicher und dient als API-Anbieter, damit die Apigee APIs auf Laufzeitdatenentitäten zugreifen und diese verwalten können.
Messwerte Jede mit JMX konfigurierte Komponente Von einem einzelnen Prometheus-Server pro Cluster für alle Dienste verwaltet.