L‘introduction de Pipeline Execute Snap a apporté de nombreux avantages aux intégrations de mes clients (je suis consultant technique), en réduisant le nombre de pipelines globaux nécessaires pour servir leurs intégrations départementales, en améliorant la charge de test de régression et en améliorant le délai de rentabilité.
Les paragraphes suivants tentent d‘expliquer certaines des options de Pipeline Execute Snap que mes clients ont utilisées pour affecter les performances.
Le Pipeline Execute Snap vous permet de créer ce qui est essentiellement une intégration enfant qui peut être réutilisée à différents endroits. La création d‘intégrations modulaires pouvant être utilisées par différents services a permis de normaliser les intégrations de l‘entreprise et de réduire les reprises inutiles. Et surtout, cela a permis de réduire la charge de travail des responsables de l‘intégration.
La boîte de dialogue des paramètres d‘exécution du pipeline se présente comme suit :
Je décrirai brièvement les options qui peuvent faire la différence au niveau des performances. Pour une vue d‘ensemble complète, consultez la documentation d‘aide ici.
Snaplex :
Sélectionner un Snaplex signifie que vous choisissez d‘exécuter le pipeline enfant sur un Snaplex particulier. Sélectionner cette option signifie que vous êtes sujet à une baisse de performance initiale lorsque vous déplacez l‘intégration pour qu‘elle soit équilibrée en charge sur tous les nœuds de ce Snaplex particulier. Laisser cette option vide signifie que vous choisissez d‘exécuter la ou les instances du pipeline enfant sur le même nœud JCC que l‘intégration mère.
Réutilisation des exécutions :
Lorsque cette option est activée, l‘instantané démarre une exécution enfant et lui transmet plusieurs documents d‘entrée. Les exécutions réutilisables continueront à fonctionner jusqu‘à ce que tous les documents d‘entrée aient été entièrement traités.
En résumé, utilisez cette option chaque fois que vous le pouvez. Vous ne pouvez pas utiliser cette option si vous avez des paramètres de pipeline différents pour chaque exécution, mais j‘ai constaté que le fait de passer ces paramètres en tant que données dans l‘enfant peut permettre la réutilisation.
Si l‘option de réutilisation du pipeline n‘est pas activée, une nouvelle exécution du pipeline est créée pour chaque document d‘entrée, ce qui a évidemment une incidence sur les performances.
Taille de la piscine :
Plusieurs documents d‘entrée peuvent être traités simultanément en spécifiant une taille de pool d‘exécution. Lorsque la taille du pool est supérieure à un, le Snap démarre les exécutions au fur et à mesure des besoins jusqu‘à la taille du pool indiquée.
Lorsque la réutilisation est également activée, le Snap ne démarre une nouvelle exécution que si toutes les exécutions sont occupées à travailler sur des documents et que le nombre total d‘exécutions est inférieur à la taille du pool.
En résumé
Pour maximiser les performances :
- Ajustez vos documents JSON d‘entrée pour encapsuler les paramètres du pipeline, de sorte que vous n‘ayez pas besoin de les passer en tant que paramètres du pipeline.
- Toujours utiliser l‘option de réutilisation
- Augmenter la taille de la piscine (13 a toujours été un bon chiffre pour moi)
Et surtout, faites part des résultats obtenus à l‘équipe SnapLogic, afin qu‘elle puisse recommander de meilleures options à l‘avenir (elle a besoin d‘un retour d‘information de la part des utilisateurs). Faites également part de vos commentaires sur le site de la communauté SnapLogic, car d‘autres utilisateurs de SnapLogic et moi-même serions ravis de connaître toutes les options susceptibles d‘améliorer nos temps de travail.
Bonne réutilisation !
Elesh Mistry est un consultant technique qui a acquis de l‘expérience dans les secteurs de la défense, des télécommunications et de la finance. Il a également travaillé chez SnapLogic en tant que consultant en solutions dans la région EMEA. Vous pouvez le suivre sur LinkedIn et vous abonner à sa chaîne YouTube, où il a publié un certain nombre de vidéos sur l‘intégration. Les points de vue, opinions et positions exprimés dans ces articles sont ceux de l‘auteur et ne représentent pas nécessairement ceux de SnapLogic.