Présentation des fonctionnalités techniques d'Apigee

Cette page s'applique à Apigee et à Apigee hybrid.

Consultez la documentation d'Apigee Edge.

Cet article récapitule les fonctionnalités d'Apigee et compare les caractéristiques et fonctionnalités d'Apigee et d'Apigee hybrid.

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 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.

Récapitulatif des fonctionnalités Apigee

Le tableau suivant récapitule les fonctionnalités d'Apigee (et d'Apigee hybrid).

Caractéristique Compatibilité avec Apigee 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 Apigee Adapter for Envoy.
Organisation de l'application Organisez les applications à l'aide d'AppGroups ou d'associations développeur/application. Consultez la section Organiser la propriété des applications clientes.
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
  • Flexibilité de 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.

Compatibilité avec les proxys gRPC

Traite les requêtes API unaires utilisant le protocole gRPC sur un serveur cible gRPC. Consultez la section Créer des proxys d'API gRPC.

Cas des noms de champs d'en-tête HTTP/1.1

Convertit les noms de champs d'en-tête HTTP/1.1 en minuscules lorsqu'ils sont transmis au backend. Ce comportement peut affecter les applications qui s'attendent à ce que la casse soit préservée.

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é.

Monétisation Consultez la section Présentation de la monétisation.
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).
OAuth Une nouvelle règle RevokeOAuthv2 révoque par ID d'utilisateur final, ID d'application ou les deux.
Règles Consultez la section Présentation des règles.
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.

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 Compatibilité avec Trace.
Hôtes virtuels

Hybride :

  • 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:

  • 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.

Compatibilité avec trace/débogage

Le tableau suivant présente la compatibilité de Trace avec Apigee et Apigee hybrid :

Caractéristique Compatibilité avec Apigee et Apigee hybrid
Rapidité Léger retard, asynchrone
Nom/ID de session N'accepte pas le nom de session de l'utilisateur.
Filtres 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

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 La valeur par défaut est de 10 par processeur de messages. La valeur maximale est de 15.
API Apigee expose l'API Debug Session et l'API Debug Session Data.

Présentation de l'API

Le tableau suivant récapitule les API et les fonctionnalités d'Apigee.

Comportement API Apigee
Domaine de base apigee.googleapis.com
Types de contenu application/json
Authentification OAuth2
Horodatage dans les clés Format String
{
  "createdAt": "1234",
  "lastModifiedAt": "5678"
}
Structure du paramètre de requête expand=false
{
  "proxies": [
    {
      "name": "helloworld"
    },
    {
      "name": "weather"
    }
  ]
}
Paramètres de requête précédés du trait de soulignement Non compatible (optimal=true)
Propriétés des charges utiles :
  • created_by
  • modified_by
  • self
Non compatible
Valeurs par défaut dans les charges utiles Non incluses
Structure de traitement des erreurs
{
  "error": {
    "code": 409,
    "message": "...",
    "status": "ABORTED",
    "details": [...]
  }
}
Réponse de suppression du cache Renvoie 204 No Content
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.

API des métriques Apigee

Récapitulatif des API de métriques Apigee :

Caractéristique API Apigee
Point de terminaison de l'API apigee.googleapis.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.
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.

Fonctionnalités d'Apigee hybrid

Le tableau suivant récapitule les fonctionnalités hybrides :

Service Zone Apigee hybrid
Analytics 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.
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.
Persistance Cassandra assure la persistance des fonctionnalités des services de gestion des clés, des mappages clé-valeur, des quotas et du cache.
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.
Interface utilisateur administrative L'UI Apigee est une application en conteneur hébergée sur le plan 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.
API Les API Apigee 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 puissent accéder aux entités des données d'exécution et les gérer.
Métriques Géré par un seul serveur Prometheus par cluster pour tous les services.