A propos de la création d'intégrations asynchrones résilientes

Vous pouvez parfois constater que vos intégrations sont fragiles, incapables de gérer même les interruptions brèves ou temporaires. Vous avez besoin de votre intégration asynchrone pour évoluer efficacement, et vous avez besoin d'options pour développer et tester ces intégrations afin de vous assurer qu'elle fonctionnera comme prévu en production. Ce guide stratégique propose des approches suggérées pour la création d'intégrations asynchrones résilientes aux réalités des réseaux et des infrastructures modernes.

Par exemple, lorsque vous créez des entités sur un cloud financier à l'aide des API REST, des interruptions temporaires peuvent se produire lors de la création de notes de frais, de comptes bancaires ou d'autres entités. Pour ralentir dynamiquement de telles demandes touchant le Cloud financier, le modèle de stationnement est discuté dans ce guide. Avec le modèle de parking, vous pouvez stocker les données dans une phase intermédiaire avant de les traiter afin d'éviter les problèmes de traitement tels que les lots, les flux/corrélations de messages complexes et la limitation.

A propos des intégrations dans Oracle Integration

Les intégrations sont le principal ingrédient d'Oracle Integration. Une intégration inclut au moins une connexion de déclencheur (source) (pour les demandes envoyées à Oracle Integration) et une connexion d'appel (cible) (pour les demandes envoyées à partir d'Oracle Integration vers la cible) et la mise en correspondance de champs entre ces deux connexions.

Lorsque vous créez vos intégrations, vous créez les connexions que vous avez déjà créées en définissant le mode de traitement des données pour les connexions de déclencheur (source) et d'appel (cible). Cela peut inclure la définition du type d'opération à effectuer sur les données, les objets métier et les champs sur lesquels effectuer ces opérations, les schémas requis, etc. Pour faciliter cette tâche, les tâches de configuration les plus complexes sont gérées par Oracle Integration. Une fois les connexions de déclencheur (source) et d'appel (cible) configurées, les mappeurs entre les deux sont activés afin que vous puissiez définir la façon dont les informations sont transférées entre les structures de données de déclencheur (source) et d'appel (cible) pour les messages de demande et de réponse.

A propos du modèle de parking

Dans le modèle de parking, les données sont stockées dans une phase intermédiaire avant de terminer le traitement des données de la phase intermédiaire vers le système final.
Voici quelques-unes des alternatives possibles pour stocker les données réelles dans le parking. Chaque option possède différentes propriétés à prendre en compte :
  • L'approche la plus simple consiste à stocker des données sous la forme d'un objet CLOB au format XML. Cette méthode ajoute une surcharge supplémentaire à l'écriture et à la lecture du CLOB, ainsi qu'à la transformation entre le XML et le CLOB.
  • Vous pouvez stocker les données séparément dans d'autres tables avec des colonnes entièrement réalisées. Cette méthode est la plus appropriée si, dans l'application, le processus de dégroupage copie déjà la charge utile d'entrée dans un format tabulaire dans la table de base de données. Pour que le format des données puisse être utilisé pour le parking.
  • Combinez la table avec le parking lui-même. Bien que cette solution puisse s'avérer la plus performante, elle ne peut fonctionner que pour des structures de données simples dans le parking.

À propos de la résilience

Avant de vous plonger dans ce qui rendra votre environnement résilient, vous devez d'abord définir ce que la résilience signifie pour vous et votre entreprise.

En d'autres termes, quel est le coût associé à une interruption de vos processus d'intégration. Pour certains clients, une interruption de quelques minutes est parfaitement acceptable et ne retardera que partiellement un processus en mode batch qui s'exécute correctement dans sa fenêtre de traitement. Pour d'autres, même quelques secondes de panne entraînent des pertes financières qui ont un impact direct sur l'entreprise.

De ce point de vue, il est important d'examiner les éléments suivants :

  • Quelle est la durée d'une coupure acceptable dans votre environnement ? Vous devez ici définir le coût pour l'entreprise en cas de panne et décrire l'évolution de cette panne avec la durée de la panne.
  • Quelles sont les technologies utilisées et comment respecter le contrat de niveau de service attendu ? Adoptez-vous une approche en temps réel ou par lots ? Ou une combinaison des deux ? Quelle quantité de données traitez-vous ?