Comparer les produits Apigee

Cette article compare Apigee X et Apigee hybrid à Apigee Edge pour le cloud public et privé. Pour en savoir plus sur Apigee Edge pour le cloud public et le cloud privé, consultez la documentation Apigee Edge.

Le tableau suivant répertorie les produits de gestion d'API Apigee comparés sur cette page :

Produit Emplacement d'hébergement Géré par
Apigee Edge for Public Cloud Cloud d'Apigee Apigee
Apigee Edge pour le cloud privé Centre de données privé du client Client
Apigee X Google Cloud Apigee
Apigee hybrid Google Cloud et centre de données privé du client Apigee gère le plan de gestion et le client gère le plan d'exécution.

Apigee hybrid/Apigee Edge for Private Cloud

Le tableau suivant compare Apigee hybrid et Apigee Edge for Private Cloud :

Service Produit ou catégorie de fonctionnalités Apigee
Apigee hybrid Apigee Edge pour le cloud privé
Analyse Un pod de collecte de données dans le plan d'exécution utilise fluentd et UDCA (Universal Data Collection Agent, agent de collecte des données universel) pour recueillir des données analytiques et alimenter les données dans la plate-forme d'analyse unifiée (UAP, Unified Analytics Platform) dans le plan de gestion. Serveurs Qpid et Postgres
Passerelle de proxy d'API Le processeur de messages traite les requêtes entrantes. Les processeurs de messages sont mis en œuvre sous la forme d'une ou plusieurs applications en conteneur dans le plan d'exécution. Processeur de messages
Persistance Cassandra assure la persistance des fonctionnalités des services de gestion des clés, des mappages clé-valeur, des quotas et du cache. Nœud ou anneau Cassandra
Déploiement Le synchronisateur garantit que les configurations de proxy d'API, les informations de l'environnement et d'autres données sont à jour entre le plan de gestion et le plan d'exécution. ZooKeeper
Interface utilisateur administrative L'UI Apigee est une application en conteneur hébergée sur le plan de gestion. L'UI Apigee Edge est hébergée sur le serveur de gestion.
Équilibrage de charge Un contrôleur d'entrée Istio envoie des requêtes à l'application en conteneur Router/Processeur de messages dans le plan d'exécution. Routeur
API Les API Apigee X sont accessibles via le serveur de gestion et MART. MART interagit avec le datastore Cassandra local et sert de fournisseur d'API pour que les API Apigee X puissent accéder aux entités des données d'exécution et les gérer. Serveur de gestion
Métriques Géré par un seul serveur Prometheus par cluster pour tous les services. Chaque composant configuré avec JMX

Comparatif des fonctionnalités

Les sections suivantes comparent les fonctionnalités d'Apigee Edge pour le cloud public/privé avec une disponibilité des fonctionnalités dans Apigee X et Apigee hybrid.

Récapitulatif des différences de fonctionnalités actuelles

Le tableau suivant décrit les différences au niveau des fonctionnalités entre Apigee X (et Apigee hybrid) et les plates-formes Apigee Edge pour le cloud public/privé.

Fonctionnalité Apigee Edge Compatibilité avec Apigee X et Apigee hybrid
Révisions du proxy d'API

Immuable lors du déploiement

Adaptateur Apigee pour Istio Obsolète : Nous vous recommandons d'utiliser plutôt l'adaptateur Apigee pour Envoy.
Déploiements
  • Déploiements asynchrones
  • La récupération de l'état du déploiement est basée sur la dernière fois que le plan d'exécution a consulté le plan de gestion.
Environnements
  • Compatibilité avec les groupes d'environnement
  • Libre-service via l'UI et les API Apigee
  • Plus de flexibilité dans la topologie de diffusion
  • Un pod de processeur de messages ne peut diffuser qu'un seul environnement.

Pour en savoir plus, consultez la section À propos des environnements et des groupes d'environnements.

Extensions Non compatible
Keystores/truststores
  • Northbound géré en tant que secrets Kubernetes
Mappages clé-valeur
  • Vous pouvez créer des KVM chiffrées au niveau de l'environnement dans l'interface utilisateur d'Apigee. Les KVM sont toujours chiffrées. Vous ne pouvez pas ajouter, mettre à jour ni afficher d'entrées de mappage clé-valeur dans l'UI.
  • Utilisez l'attribut private. avec toutes les variables lorsque vous accédez à une KVM avec la commande GET pour masquer les informations de la KVM dans une session de débogage (Trace). Si l'attribut private. n'est pas utilisé, la KVM est toujours chiffrée. Toutefois, ses informations apparaissent déchiffrées dans la session de débogage (Trace) et aucune exception ne sera générée.
  • Vous pouvez gérer les entrées KVM à l'aide de l'API keyvaluemaps.entries ou de la règle KeyValueMapOperations.
  • Vous pouvez utiliser des ensembles de propriétés pour certains des mêmes cas d'utilisation que les mappages clé-valeur. Consultez la page Utiliser les ensembles de propriétés.
  • L'élément <MapName> permet à la règle KeyValueMapOperations d'identifier la KVM à utiliser de manière dynamique, au moment de l'exécution.

Pour en savoir plus sur la création de KVM dans l'UI, consultez la page Utiliser les mappages clé-valeur. Consultez également la page Accéder aux données de configuration pour savoir comment choisir le mécanisme de persistance des données approprié.

Microgateway Non compatible
Monétisation Voir la section Comparer la monétisation avec Apigee X et Apigee Edge
Node.js
  • Les proxys d'API Node.js ne sont pas acceptés.
  • Apigee vous recommande d'héberger des applications Node.js en tant que conteneurs distincts dans Kubernetes (même cluster ou cluster différent).
Cibles hébergées

Non compatible.

OAuth Une nouvelle règle RevokeOAuthv2 révoque par ID d'utilisateur final, ID d'application ou les deux. Cette règle remplace l'API Apigee Edge pour révoquer les jetons OAuth2.
Magasin de spécifications OpenAPI Non disponible
Règles
  • Nouvelles règles :
    • Règle AssertCondition : évalue une instruction conditionnelle au moment de l'exécution dans les flux de requêtes ou de réponses.
    • Règle CORS : permet aux appels XMLHttpRequest (XHR) JavaScript exécutés sur une page Web d'interagir avec les ressources de domaines extérieures au domaine d'origine.
    • Règle DataCapture : remplace la règle StatisticsCollector.
    • Règle ExternalCallout : envoie des requêtes gRPC à votre serveur gRPC pour mettre en œuvre un comportement personnalisé non compatible avec les règles Apigee.
    • Règle GraphQL : analyse les charges utiles GraphQL en variables de flux de messages, vérifie les requêtes GraphQL par rapport à un schéma, ou les deux.
    • Règle PublishMessages : publie les informations sur le flux de proxy de l'API dans un sujet Google Cloud Pub/Sub.
    • Règle RevokeOAuthv2 : révocation par ID utilisateur, ID d'application ou les deux.
    • Règle TraceCapture : ajoute des variables supplémentaires aux données de trace de votre environnement d'exécution Apigee.
  • Règle non compatible :
    • Règle StatisticsCollector (remplacée par la nouvelle règle DataCapture)
  • Règles modifiées :
Ressources Impossible d'utiliser les ressources au niveau de l'organisation
Rôles et autorisations
  • Gestion via le service IAM de Google Cloud Console
  • Certains rôles sélectionnés prêts à l'emploi sont disponibles.
  • Vous pouvez créer des rôles personnalisés pouvant inclure d'autres autorisations Google Cloud.

Pour en savoir plus, consultez la page Utilisateurs et rôles.

Sense Non compatible
Services SOAP dans l'assistant de création de proxy Non compatible Consultez wsdl2apigee, un projet Open Source qui fournit des utilitaires SOAP à utiliser avec Apigee.
Sessions de trace/débogage Consultez la section Différences avec Trace.
Hôtes virtuels

Apigee hybrid :

  • L'entrée est mise en œuvre via Anthos Service Mesh.
  • Les clés et les certificats sont déployés directement dans Kubernetes.

Pour Apigee X :

  • Gestion non effectuée dans ou via Apigee
  • Chaque instance expose un point de terminaison HTTPS via un certificat autosigné. L'autorité de certification peut être téléchargée en interrogeant l'organisation.
  • La passerelle Istio (Envoy) est utilisée là où les certificats et les clés sont déployés.

Pour tous :

  • Gestion non effectuée dans ou via Apigee

Différences avec Trace

Le tableau suivant compare les différences de fonctionnement de Trace dans Apigee X et Apigee hybrid par rapport à Apigee Edge Cloud :

Caractéristique Apigee Edge Cloud Apigee X et Apigee hybrid
Rapidité Temps réel, synchrone Léger retard, asynchrone
Nom/ID de session Accepte le nom de session de l'utilisateur. N'accepte pas le nom de session de l'utilisateur.
Filtres Compatibilité avec les filtres de base, tels que le filtrage des en-têtes et des paramètres de requête. Compatibilité avec la logique de filtrage complexe, y compris les opérations logiques "AND" et "OR". Accès à toute variable de flux mentionnée dans la documentation de référence sur les variables de flux. La syntaxe est identique à celle utilisée avec les conditions, comme indiqué dans la documentation de référence sur les conditions.
Délai avant expiration de la session

Définit la durée de la session de débogage, ainsi que la durée de conservation des données.

La valeur par défaut est de 20 minutes lorsqu'elle est lancée via des appels d'API et de 10 minutes lorsqu'elle est lancée dans l'UI.

Ne définit que la durée de la session de débogage. Le point de départ est le moment où le processeur de messages reçoit la requête d'exécution en mode de débogage.

La valeur par défaut est de 5 minutes si la session a été lancée avec l'API, et de 10 minutes si elle a été lancée dans l'UI.

Les données sont conservées pendant 24 heures avant que hybrid ne les supprime automatiquement.

Validité de la session

Durée pendant laquelle la requête de création de session est valide. Si la session de débogage ne démarre pas dans ce délai, les synchronisateurs peuvent ignorer la requête de création de session. Veillez à maintenir la synchronisation des horloges de vos synchronisateurs, comme décrit dans la section Prérequis.
Nombre de requêtes Trace Maximum 20 par processeur de message. La valeur par défaut est de 10 par processeur de messages. La valeur maximale est de 15.
API Apigee Edge Cloud Apigee X
Apigee X expose l'API Debug Session et l'API Debug Session Data, mais n'accepte pas les éléments suivants via les API Apigee X :
Arrêter la session de débogage

Supprimer des transactions spécifiques

Fonctionnalités Apigee Edge non compatibles dans Apigee X

Google ne prévoit pas d'assurer les fonctionnalités suivantes :

  • API permettant de rechercher ou de révoquer les jetons d'accès OAuth (car les jetons sont hachés)
  • Développement du portail des développeurs avec Drupal 7
  • Règle OAuth v1 ou OAuth OAuthv1.0a
  • Trireme (fin de vie le 10/10/2019)

Comparatif des API

En général, la plupart des API Apigee Edge disposent d'équivalents d'API Apigee. Cette section fournit les informations suivantes :

Récapitulatif des changements d'utilisation de l'API

Vous trouverez ci-dessous la liste des modifications apportées au comportement de toutes les API Apigee X par rapport aux API Apigee Edge.

Comportement API Apigee X API Apigee Edge
Domaine de base apigee.googleapis.com api.enterprise.apigee.com
Types de contenu application/json application/json
application/xml
Authentification OAuth2 OAuth2, SAML, Basic
Horodatage dans les clés Format String

{
  "createdAt": "1234",
  "lastModifiedAt": "5678"
}
Format int64

{
  "createdAt": 1234,
  "lastModifiedAt": 5678
}
Structure du paramètre de requête expand=false

{
  "proxies": [
    {
      "name": "helloworld"
    },
    {
      "name": "weather"
    }
  ]
}

[
  "helloworld",
  "weather"
]
Paramètres de requête précédés du trait de soulignement Non compatible (optimal=true) Compatible (_optimal=true)
Propriétés des charges utiles :
  • created_by
  • modified_by
  • self
Non compatible Compatible
Valeurs par défaut dans les charges utiles Non inclus Inclus
Structure de traitement des erreurs

{
  "error": {
    "code": 409,
    "message": "...",
    "status": "ABORTED",
    "details": [...]
  }
}

{
  "code": "...",
  "message": "..",
  "contexts": []
}
Réponse de suppression du cache Renvoie 204 No Content Renvoie : 200 OK et les détails du cache
Opérations d'API de mise en cache Répertorier et Supprimer uniquement. Un cache L1 de courte durée est automatiquement créé lorsque vous déployez un proxy d'API. Pour plus d'informations, consultez la section Composants internes du cache. Options répertorier, créer, obtenir, mettre à jour, supprimer, tout effacer, et effacer.

Différences entre les API de métriques Apigee et Apigee

Le résumé des changements d'utilisation de l'API répertorie les différences générales entre l'API Apigee et l'API Apigee Edge. Le tableau suivant répertorie les différences spécifiques aux API de métriques :

Caractéristique API Apigee X API Apigee Edge
Point de terminaison de l'API apigee.googleapis.com api.enterprise.apigee.com
E-mails d'analyse quotidiens Aucune API compatible
API Async Query List La propriété userId est omise de la réponse. Consultez la page Method: organizations.environments.queries.list. Obtenir la liste des requêtes d'analyse asynchrones
API de rapports personnalisés Les propriétés createdBy et lastModifiedBy ont été supprimées de la réponse. Consultez la page concernant l'API Reports. API Reports

API Apigee Edge non compatibles

Le tableau suivant répertorie les API Apigee Edge non compatibles (qui ne possèdent pas d'équivalent d'API Apigee X).

Catégorie d'API API Apigee Edge non compatibles
Surveillance des API Aucune API compatible
Proxys d'API
  • Forcer l'annulation du déploiement du proxy d'API
  • Obtenir les dépendances npm
  • Gérer les modules npm
Audits Utiliser l'API Stackdriver Logging
Journaux mis en cache Aucune API compatible
Entreprises Aucune API compatible
Applications d'entreprise Aucune API compatible
Famille d'applications d'entreprise Aucune API compatible
Clés d'applications d'entreprise Aucune API compatible
Sessions de débogage
  • Impossible d'arrêter les sessions de trace
  • Impossible de supprimer des transactions individuelles

Pour en savoir plus, consultez la section Différences avec Trace.

Application de développeur Obtenir le nombre de ressources d'API
Famille d'applications de développeur Aucune API compatible
Extensions Aucune API compatible
Keystore : truststore Tester un keystore ou un truststore
LDAP Aucune API compatible
Monétisation Aucune API compatible
OAuth V2 Aucune API compatible
Règles Aucune API compatible
Fichiers de ressources
  • Champ d'application de la révision du proxy API
  • Champ d'application de l'organisation
Sense Aucune API compatible
Utilisateurs et rôles utilisateur Utilisez les API liées à IAM (Google Identity and Access Management) décrites dans la page Gérer les utilisateurs, les rôles et les autorisations à l'aide d'API
Hôtes virtuels Aucune API compatible