Vous consultez la documentation Apigee Edge.
Accédez à la
documentation**Apigee X**. info
L'une des fonctionnalités uniques et utiles d'Apigee Edge est la possibilité d'encapsuler une application NodeJS dans un proxy d'API. Cela permet aux développeurs de créer des applications côté serveur axées sur les événements à l'aide d'Edge.
Antimodèle
Le déploiement de proxys d'API consiste à les rendre disponibles pour traiter les requêtes API. Chacun des proxys d'API déployés est chargé dans la mémoire d'exécution du processeur de messages afin de pouvoir traiter les requêtes API pour le proxy d'API spécifique. Par conséquent, l'utilisation de la mémoire d'exécution augmente avec le nombre de proxys d'API déployés. Le fait de laisser des proxys d'API inutilisés déployés peut entraîner une utilisation inutile de la mémoire d'exécution.
Dans le cas des proxys d'API NodeJS, il existe une autre implication.
La plate-forme lance une "application Node" pour chaque proxy d'API NodeJS déployé. Une application Node s'apparente à une instance de serveur de nœud autonome sur le processus JVM du processeur de messages.
En effet, pour chaque proxy d'API NodeJS déployé, Edge lance un serveur de nœud afin de traiter les requêtes des proxys correspondants. Si le même proxy d'API NodeJS est déployé dans plusieurs environnements, une application de nœud correspondante est lancée pour chaque environnement. Dans les cas où de nombreux proxys d'API NodeJS sont déployés, mais inutilisés, plusieurs applications de nœud sont lancées. Les proxys NodeJS inutilisés se traduisent par des applications de nœud inactives qui consomment de la mémoire et affectent les temps de démarrage du processus d'application.
| Proxys utilisés | Proxys inutilisés | ||||
|---|---|---|---|---|---|
| # Proxys | # Environnements déployés | # applications de nœud lancées | # Proxys | # Environnements déployés | # applications de nœud lancées |
| 10 | dev, test, prod (3) | 10x3=30 | 12 | dev, test, prod (3) | 12x3=36 |
Dans l'illustration ci-dessus, 36 applications de nœud inutilisées sont lancées, ce qui utilise la mémoire système et a un effet négatif sur les temps de démarrage du processus.
Impact
- Utilisation élevée de la mémoire et effet en cascade sur la capacité de l'application à traiter d'autres requêtes
- Impact probable sur les performances des proxys d'API qui diffusent réellement le trafic
Bonne pratique
- Annulez le déploiement des proxys d'API inutilisés.
- Utilisez le tableau de bord des performances du proxy Analytics pour déterminer quels proxys ne diffusent pas de trafic. Annulez le déploiement de ceux dont vous n'avez pas besoin.