Vous consultez la documentation d'Apigee Edge.
Accéder à la documentation sur Apigee X en savoir plus
Les cibles hébergées vous permettent d'exécuter des applications Node.js dans un environnement d'exécution natif hébergé par Apigee. L'objectif des cibles hébergées est simple : vous permettre de déployer des applications dans un environnement natif, sécurisé, évolutif et isolé, où les proxys d'API Edge peuvent les appeler en tant que services cibles.
Comme illustré dans la figure suivante, un proxy d'API Edge appelle une application Node.js déployée dans l'environnement Hosted Targets. Notez que l'environnement de cibles hébergées est limité à un environnement organisation:environnement Apigee.
Pour qu'un proxy d'API Edge communique avec une application Hosted Targets correctement créée et déployée, une configuration simple est requise dans le point de terminaison cible du proxy. Pour commencer, accédez aux tutoriels sur les cibles hébergées.
Quelles sont les durées d'exécution d'application compatibles avec les cibles hébergées ?
Actuellement, vous ne pouvez déployer des applications Node.js que sur des cibles hébergées.
Installer des cibles hébergées
Les cibles hébergées sont disponibles dans toutes les organisations Edge Public Cloud. Vous n'avez rien à installer pour utiliser les cibles hébergées.
Vérifier que les cibles hébergées sont activées
Si vous souhaitez vérifier que les cibles hébergées sont activées pour votre organisation, renseignez-vous sur votre organisation et assurez-vous que la propriété features.isEdgeFunctionsEnabled
est définie sur "true". La propriété est en lecture seule.
Exemple :
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" }
Ce qu'il faut savoir sur les cibles hébergées
Les cibles hébergées permettent aux applications Node.js de s'exécuter dans un environnement natif qui ne dépend d'aucune technologie d'exécution spécifique à Apigee. Vous pouvez déboguer et tester votre application localement avant de la déployer. Vous avez ainsi l'assurance que la version déployée fonctionnera exactement comme en local. Au moment du déploiement, vous pouvez choisir n'importe quelle version d'environnement d'exécution d'application pour exécuter votre application dans des cibles hébergées. Par exemple, vous pouvez choisir d'exécuter une application Node.js dans un environnement v8.10.0.
Limites
Pour connaître les limites d'utilisation des cibles hébergées, consultez la page Limites du produit Apigee.
Procédure de base
Si vous connaissez le développement de proxy Edge, vous n'avez qu'à suivre quelques étapes simples pour utiliser les cibles hébergées. En substance, vous créez, déployez et gérez des proxys Edge pour les cibles hébergées comme vous le feriez pour tout autre proxy Apigee Edge.
Pour utiliser les cibles hébergées, vous devez effectuer les tâches suivantes. Les tutoriels décrivent en détail chacune de ces tâches.
- Développez et testez votre application Node.js en local.
- Créez un fichier manifeste dans le répertoire racine du projet d'application. Le fichier manifeste est un fichier YAML qui spécifie les informations nécessaires à la création et au déploiement de l'application.
- Ajoutez votre application au proxy Edge en tant que type de ressource hébergée.
- Dans le point de terminaison cible du proxy, ajoutez un tag
<HostedTarget/>
vide. Cette balise indique à Edge de déployer l'application Node.js dans l'environnement Hosted Targets. Par exemple :
<?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>
Champ d'application des applications Hosted Targets
Les applications de cibles hébergées sont limitées à un environnement d'organisation Edge. Ce champ d'application est le même que pour tout proxy Edge.
Les applications cibles hébergées peuvent-elles accéder aux données du proxy ?
Les applications cibles hébergées n'ont actuellement pas accès à l'environnement d'exécution du proxy. Cela signifie que vous ne pouvez pas accéder aux variables de flux, aux caches et à d'autres entités directement à partir d'applications de cibles hébergées.
Avec Node.js intégré (la prise en charge traditionnelle de Node.js basée sur Trireme dans Edge), vous pouvez utiliser apigee-access pour accéder aux variables de flux et à d'autres entités dans Edge. Toutefois, les cibles hébergées ne sont pas compatibles avec le module apigee-access
pour les déploiements Node.js.
Consultez également Est-il possible de contourner l'absence d'accès à Apigee ?
Migrer le code d'application existant vers des cibles hébergées
Il n'existe actuellement aucun chemin de migration automatisé d'une application Node.js intégrée basée sur Trireme vers des cibles hébergées. Toutefois, vous pouvez convertir manuellement le code d'application existant en cibles hébergées. Pour en savoir plus, consultez Migrer un proxy Node.js existant vers un proxy Hosted Targets.